我想在更新其pdform状态后向用户发送电子邮件。我已经写了一些关于如何完成这件事的内容。
在我的pdform.rb
模型中
after_update :sendemail
def sendemail
if status_changed?
end
end
我已经在用户创建新表单时发送了电子邮件,但是,我不确定如何在模型中发送电子邮件。
控制器具有可正常工作的邮件程序功能。我怎么能在这个模型中发送它?
NewPdform.notify_user(current_user, @pdform).deliver
非常感谢任何帮助。仍然掌握着ActiveRecord。
在我的pdforms_controller更新方法中,我添加了以下变量。
update_user = @pdform.user
我在pdform.rb
(模型)中添加了一个attr_accessor
attr_accessor :update_user
after_update :sendemail
def sendemail
NewPdform.notify_update(update_user).deliver
end
在我的邮件中
def notify_update(user)
@user = user
mail(to: @user.email, subject: "some change occured")
end
答案 0 :(得分:0)
在更广泛地使用我的大脑后,我解决了自己的问题。
在调用邮件程序函数而不是传递pdform
的参数时,无论如何都是该类的名称,只需传递self
即可。
def sendemail
NewPdform.notify_update(self).deliver
end