我有这个,
class SiteMailer < ApplicationMailer
around_action :set_sales
def notify_customer(site)
@site = site
end
private
def set_sales
@sales ||= @site.customer.sales
end
end
是否可以设置
@sales
的值?如上图?我试过了,但没有成功。任何人都可以帮助我或澄清这一点。搜索了有关此主题的先前问题并找到了使用 around_action
的人仅用于异常处理。我们不能用 around_action
像这样?
最佳答案
试试邮件文件夹:
您的文件名.html.erb
<p> lorem ipsum <%= @site %>!</p>
<p> lorem ipsum <%= @sales %>!</p>
型号 site.rb
class Site < ApplicationRecord
.............
protected
after_commit :set_sales, on: [:update #your action]
def set_sales
site = self.site
sales = site.customer.sales
SiteMailer.notify_customer(site, sales).deliver_now
end
end
……………………………………………………………………………………………………………………………………………………………………………………
class SiteMailer < ApplicationMailer
def notify_customer(site, sales)
@site = site
@sales = sales
end
end
关于ruby-on-rails - Action Mailer around_action 回调,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60157115/