【发布时间】:2014-10-24 22:28:10
【问题描述】:
在我的 Foo 模型中,我有一个方法
def support_token_create_it_if_none_exists()
self.my_support_token || self.create_a_support_token
end
当我需要支持令牌时,在我的所有 Web 代码中,我调用 foobar.support_token_create_it_if_none_exists 并返回一个令牌(如果需要,首先创建它)。
但是,如果在我的 Mailer 视图中我想做同样的事情,例如,显示支持令牌(如果它还不存在,则在传单上创建它)
...
Your token is #{@foobar.support_token_create_it_if_none_exists}
...
并在电子邮件中显示支持令牌,但如果令牌尚不存在,则不会将令牌保留在 Activerecord 中。
我假设发生了一些“邮件查看本地副本”的事情?如果是这样,有没有办法让 update_attribute 工作,即使在邮件视图中?
(简单的解决方法是确保我在调用 Mailer 时始终创建令牌,但我想了解发生了什么,所以我不会犯同样的错误。)
【问题讨论】:
标签: ruby-on-rails actionmailer