我正在尝试使用delayed_job gem在rails中从动作邮件发送电子邮件.
我从after_create回调中调用动作邮件方法
我从after_create回调中调用动作邮件方法
在演示模型中
after_create :send_mail def send_mail DemoMailer.to_client( self).deliver end
在demo_mailer中
def to_client( demo) @demo = demo mail(:to => demo.email,:subject => "Confirmation") end handle_asynchronously :to_client
ArgumentError in DemosController#create A sender (Return-Path,Sender or From) required to send a message
然后我改变了
def send_mail DemoMailer.to_client( self).deliver end
至
def send_mail DemoMailer.delay.to_client( self) end
解决方法
正如错误所示:您缺少返回路径,发件人或字段.设置from字段并不困难:
mail(:to => demo.email,:from => 'webmaster@your-domain.com',:subject => "Confirmation")
有关更多信息,请参见ActionMailer#mail documentation.