我在邮件程序模型中创建了一个实例变量 (@user) 并希望在视图中访问它?但它给了我一个错误(@user = nil)。将变量传递给查看(电子邮件正文)的最佳方法是什么?
谢谢, 奇拉格
我在邮件程序模型中创建了一个实例变量 (@user) 并希望在视图中访问它?但它给了我一个错误(@user = nil)。将变量传递给查看(电子邮件正文)的最佳方法是什么?
谢谢, 奇拉格
如果你想在你的邮件模板中访问一个实例变量,那么在你的邮件模型中添加
@body[:user] = user_object
以上将创建一个实例变量@user,可以在您的视图中访问。您应该能够通过执行访问邮件视图中的用户对象
@user
如果您使用多种格式(文本/html),此处的文档提供了替代方法的示例。
我在 Rails 3 的过程是类似的:
@user = user_object
以上将创建一个实例变量@user,可以在您的视图中访问。您应该能够通过执行访问邮件视图中的用户对象
@user
请注意,您需要在
mail(:from => "info@domain.info", :to => recipient, :subject => "Subject")
要将变量传递给视图/电子邮件正文,请通过 body 方法发送它们:-)因此,例如,body :account => recipient
将导致实例变量@account
的值recipient
在视图中可访问。