1

是否值得花时间和精力在我们的Rails网站上创建一个功能,以便每周向我们的客户数据库发送一次电子邮件,或者MailChimp是全能的用户每周发送一次通讯给成千上万的人?如果我们使用我们的rails应用程序,SenderGrid或其他功能可以成为我们的通讯选项吗?使用MailChimp或Rails网站向客户发送简报

我们目前使用Mailchimp,我们喜欢它,但公司的主人希望网站在一个简单的地方为我们做所有事情。

谢谢您的反馈!

+1

您可以使用[Mandrill](http://mandrill.com)。它是MailChimp的一部分,因此您可以从MailChimp导入您的模板。 – AbM

回答

1

希望网站在一个简单的地方为我们做一切。

在这种情况下,它不是“Mailchimp或胸围”的问题,这是一个问题abstraction

具体来说,业主可能会希望在他的网页仪表板上有一个中央“仪表盘”(有点像CRM的工作原理),从中可以看到有多少会员,电子邮件等已发出。


因此,我会努力在该应用使用Mandrill和整理数据,就像这样:

#app/models/user.rb 
class User < ActiveRecord::Base 
    has_many :mailouts 
    has_many :newsletters, through: :mailouts 
end 

#app/models/mailout.rb 
class Mailout < ActiveRecord::Base 
    #columns id | user_id | newsletter_id | created_at | updated_at | sent_at | received_at 
    belongs_to :user 
    belongs_to :newsletter 
end 

#app/models/newsletter.rb 
class Newsletter < ActiveRecord::Base 
    #columns id | title | body | created_at | updated_at 
    has_many :mailouts 
    has_many :users, through: :mailouts 

    after_create :set_mailouts 

    private 

    def set_mailouts 
     User.find_each do |user| 
     self.mailouts.create(user: user) 
     end 
    end 
end 

这将使你使用以下的能力:

#app/controllers/newsletters_controller.rb 
class NewslettersController < ApplicationController 
    def new 
     @newsletter = Newsletter.new 
    end 

    def create 
     @newsletter = Newsletter.new newsletter_params 
     @newsletter.save 
    end 
end 

after_create相当低效,但它表明你可以有一个rake任务,可以这样做:

记住
@newsletter = Newsletter.find x 
@newsletter.mailouts.each do |mailout| 
    # send mailout to mandrill 
end 

东西重要的是,山魈SendGrid基础设施应用。 Mailchimp本身在Mandrill基础架构之上提供UI功能。

如果您正在寻找使用Mailchimp之类的软件,您最终可能会将用户列表每周发送到Mailchimp,以便您通过他们的系统发送简报。

创建您自己的功能&链接到Mandrill只会改变您的实现,让您能够管理自己的应用程序上的数据。在思考结构时应该记住一些事情。

+1

优秀的回复!感谢您的反馈! – jgrant

1

没有像Mailchimp或SenderGrid这样的第三方,您将不得不做很多工作来处理退订功能和分析(反弹,打开,点击...)等。如果您不处理适当地取消订阅,您的公司可能会遇到实质性的法律问题。您还需要以某种方式设置适当的电子邮件服务器,因为使用Rails的没有SMTP配置的ActionMailer将具有可怕的传送速率(电子邮件客户端会将您的传送解释为欺骗电子邮件)。

如果您希望您的网站处理电子邮件通讯日程安排的逻辑,您可以将逻辑构建到您的网站中,并让网站通过API与Mailchimp(例如)通过API进行通信,以安排发送和处理退订。您还可以通过API检索广告系列统计信息,并将其写回到您的网站数据库或其他内容。这可能是值得的,取决于你想要做什么。

+0

在事情的法律方面的优秀点,并不得不做很多工作!感谢您的反馈意见! – jgrant

1

MailyHerald一试。它是一个Rails引擎,可以帮助你管理你的通讯并为你提供漂亮的网络用户界面。它也适用于Mandrill和其他电子邮件服务。

相关问题