我想在开发环境中尝试从 Rails 发送邮件。我的消息正在呈现(我可以在我正在运行的终端中看到它rails console
)。
在 config/development.rb
我有(是的,端口真的是 26):
config.action_mailer.delivery_method = :smtp
config.action_mailer.perform_deliveries = true
config.action_mailer.raise_delivery_errors = true
ActionMailer::Base.smtp_settings = {
:address => "mail.mydomain.com",
:port => 26,
:user_name => "me@mydomain.com",
:password => "removed",
:authentication => :login
}
我有
mailers/user_mailer
:class UserMailer < ActionMailer::Base
default from: "me@mydomain.com"
def send_an_email
mail(:to => "me@gmail.com", :subject => "Test from Rails")
end
end
我有一个在
views/user_mailer/send_an_email.text.erb
中正确呈现的 View .我调用 UserMailer.send_an_email.deliver
根据页面请求。Rails 不会提示我的配置。我在
rails server
中看到消息控制台输出。但是,我从未收到电子邮件,并且在控制台输出中看不到任何错误消息(如您在上面看到的那样,raise_delivery_errors = true
!。
最佳答案
史蒂夫,你有没有确定你正在调用交付方法?
mail(:to => "me@gmail.com", :subject => "Test from Rails").deliver
我忘了这样做,并且对没有错误感到非常困惑。 :)
关于ruby-on-rails - Rails 3.0,ActionMailer 传递不起作用,不显示错误消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9862829/