class DeviseMailer < Devise::Mailer
def reset_password_instructions(record, token, opts={})
mail = super
# your custom logic
mail.subject = "[SOME DB DATA]"
mail
end
end
然后修改devise.rb初始化器以使用我的邮件程序。
# Configure the class responsible to send e-mails.
config.mailer = 'DeviseMailer'
7条答案
按热度按时间cigdeys31#
我在devise.en.yml中添加了翻译,但是reset_password_instructions的正确键是user_subject而不是subject
pw136qt22#
你可以在intilizer目录下的devies.en.yml文件中更改它
并为任何邮件设置自己的主题
zf2sa74q3#
我通过创建自己的Devise::Mailer子类来实现这一点。
然后修改devise.rb初始化器以使用我的邮件程序。
bgibtngc4#
更改选项
:subject
:cbjzeqam5#
您可以在控制器中编写自己的方法并调用相应的邮件模板。这将帮助您..否则设计视图,将有一个视图页面发送重置指令。更改那里的内容。
ewm0tg9j6#
对于默认外语(例如日语)
第1步在config/locales/(或其他文件名)中创建一个“ja.yml”
STEP 2在config/environments/development.rb上
步骤3重新启动服务器
edqdpe6u7#
如果您愿意翻译Devise消息(我的例子就是这样),更好的做法是在
config/locale
中创建一个新的yml文件,并将应用程序的区域设置更改为config/application.rb
1.为了说明,我必须在
config/locale
内部创建devise.pt-BR.yml
。1.然后我从网上复制了它的翻译,在this link上。
1.最后,我将应用程序的新区域设置为
config/application.rb
,如下所示:希望它能帮助你们中的一些人有和我一样的问题。