如何在动作邮件中创建rails会话变量?

时间:2014-09-22 12:26:35

标签: ruby session ruby-on-rails-4

我想在rails action mailer中创建会话变量。在尝试创建它时会出现此错误:

undefined local variable or method `session'

如果有人知道解决方案,请提供帮助。

2 个答案:

答案 0 :(得分:0)

邮件程序无法访问会话变量。

您可以通过将其作为参数传递来访问会话变量。

YourMailer.mailer_method(session[:variable])

答案 1 :(得分:0)

只需将current_user传递给邮件程序method即可。邮件程序不应访问会话变量,current_user方法取决于session variable

class MyMailer < ActionMailer::Base 
  def hello_email(user)
    @user = user
    # your hard stuff code whatever you wanted
  end
end

现在你可以这样传递:

MyMailer.hello_email(current_user).deliver