我目前的应用程序邮件设置如下:
第1步: 观察者监视表,并在观察者
中由after_save触发时发送电子邮件第2步:
观察者然后调用类似:UserMailer.XXXXXX_created_notification(record).deliver
第3步: 用户邮件程序将邮件发送出去:
def XXXXXX_created_notification(record)
@record = record
mail(:to => "#{record.email}", :reply_to => "Reply to XXXXX", :subject => "XXXXX Notification")
end
我向rails专家提出的问题是,我希望为用户提供打开/关闭某些网站范围通知的功能。 Rails最好的地方在哪里烤?在包含在def里面的user_mailer.rb文件中?还是在观察者?
建议?
由于
答案 0 :(得分:0)
如果我必须选择,我会选择观察者 - 我与之合作过的大多数人都建议将这个逻辑移到控制器中。在许多情况下,您可能不希望根据观察到的行为触发电子邮件 - 也许您在管理环境中使用这些模型,或通过控制台等处理模型。