如何使用Rails 2.3.5使用ActionMailer设置Google Apps?

时间:2010-10-12 09:56:27

标签: ruby-on-rails

我已经为我的域设置了带有电子邮件的Google Apps设置,现在我需要配置ActionMailer才能使用它。但我发现的信息似乎是相互矛盾的。任何人都可以告诉我如何使用Rails 2.3.5进行设置?

1 个答案:

答案 0 :(得分:1)

我遇到了同样的问题并且使用了它:

步骤1.将以下内容添加到开发环境中:

ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.perform_deliveries = true
ActionMailer::Base.raise_delivery_errors = true
ActionMailer::Base.default_charset = "utf-8"
ActionMailer::Base.smtp_settings = {
  :enable_starttls_auto => true,
  :address            => "smtp.gmail.com",
  :port               => "587",
  :domain             => "domain.com",
  :authentication     => :plain,
  :user_name          => "YOUR_USER_NAME", #should be you@domain.com
  :password           => "YOUR_PASSWORD_HERE"
}

关键行是:enable_starttls_auto。在此处进行更改后,您必须重新启动webrick。

步骤2.创建类似project_mailer.rb的模型

class ProjectMailer < ActionMailer::Base

  def confirmation(project)
    subject    'Your email subject'
    recipients project.email
    from       'you@domain.com'

    body       :project => "hi"
  end
end

步骤3.创建类似/views/project_mailer/confirmation.html.haml(或.erb)的视图。这只是一个标准的视图文件。

步骤4.在控制器中添加一行,如:

ProjectMailer.deliver_confirmation(@project)