在Rails中使用Devise gem时如何设置自定义主题行?

时间:2014-05-30 11:54:56

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

如果未确认用户,我试图将重置密码邮件转换为创建帐户邮件。如果用户被确认,它将发送正常的重置密码链接。现在唯一的问题是主题。我试着像这样改变它:

 def reset_password_instructions(record, token, opts={})
    if record.confirmed?
        @confirm = true        
    else
        @confirm = false
        headers = { 
               :subject => "Welcome to SLMUN"
        }
    end     
  super
 end

但它没有用。怎么做?

2 个答案:

答案 0 :(得分:0)

如果您rails g devise views,您可以看到Devise在幕后创建的所有邮件。您应该能够在其目录中找到您所追踪的邮件,并直接在那里进行编辑。

编辑:

您需要使用headers方法设置标题,而不是变量。

请参阅Rails Guides on the subject

答案 1 :(得分:0)

您只需要通过opts[:subject]分配主题:

def reset_password_instructions(record, token, opts={})
    opts[:subject] = 'Welcome to SLMUN'  
    super
end