用于邮件服务的Action mailer控件在原基础上做了一些更改。特别是对于使用edge rails的程序员来说,这个更新尤其重要。先前的ActionMailer::base.server_settings被 ActionMailer::Base.smtp_settings取代,不过这个变化只停留在表面(名称的变化),而实质的语法仍被保留不变:
ActionMailer::Base.delivery_method = :smtp
ActionMailer::Base.smtp_settings = {
:address => "smtp.mymailserver.com",
:authentication => :login,
:user_name => "me",
:password => "password"
}
在Rails 的 1-2-stable branch 下server_settings的用法已经被删减。同时, edge版本 中的所有命名也已被完全修改,相对的,读者也需要更新自己的项目代码。
而且,这个升级还为我们带来两个新的扩展:为ActionMailer::Base.sendmail_settings 设置可运行 sendmail 的位置以及其命令行参数 (如果你在使用sendmail)
ActionMailer::Base.delivery_method = :sendmail
ActionMailer::Base.sendmail_settings = {
:location => '/usr/sbin/sendmail',
:arguments => '-i -t'
}
要查看更多的选择可以参考 ActionMailer::Base API
原文作者是 Ryan Daigle, 请访问他的博客
本片译文的原文地址:
http://ryandaigle.com/articles/2007/1/31/what-s-new-in-edge-rails-actionmailer-base-server_settings-deprecated