我在从Rails应用程序使用SMTP发送邮件时遇到问题。我有一个Mailer
课程:
class Mailer < ActionMailer::Base
def newsletter_confirmation(subscription)
recipients "my-valid-email@gmail.com" # this is set to my email
# just for testing purposes and will
# be changed to subscription.email
from "\"my-valid-helo-domain.net\" <noreply@my-valid-helo-domain.net>"
subject "Confirm your subscription"
body :subscription => subscription
end
end
当我尝试发送邮件时,我收到了Net::SMTPSyntaxError
:
501 <["noreply@my-valid-helo-domain.net"]>: missing or malformed local part
如果我注释掉from
字段,邮件就会正常发送,但是信息丢失(显然)。
对我做错了什么想法?
感谢。
编辑:我正在使用Rails 2.3.2和Ruby 1.9.1
答案 0 :(得分:2)
错误代码和错误描述表明这是邮件服务器上的错误。
我建议您检查邮件服务器以查明错误。
当涉及到ActionMailer时,如果设置了配置参数raise_delivery_errors,则应该引发异常(默认为生产但不在开发中我认为),因此您可以检查那个并尝试重新发送,如果它触发。
修改强>
这是解决方案(这是一个Ruby / Rails 1.9错误):
和补丁:
答案 1 :(得分:1)