我正在使用带有Devise的rails 3.1。当帐户确认电子邮件发出时,会收到以下主题行:
Subject: [["test13@test.com"]]MySite Account Confirmation Instructions
我修改了config / locals / devise.en.yml中的相应条目,如下所示:
mailer:
confirmation_instructions:
subject: 'MySite Account Confirmation Instructions'
我不希望电子邮件主题行中有'[[“test13@test.com”]]。我怎样才能让Devise不把它放在那里?顺便说一下,我真的不想创建一些覆盖Devises的邮件邮件的自定义邮件程序...一个答案的额外奖励积分可以避免与自定义邮件程序有任何关系。但如果这是唯一的方法,我也需要知道......
答案 0 :(得分:1)
我的猜测是[["test13@test.com"]]
实际上只应该出现在开发模式中,因为这是ActionMailer的DevelopmentMailInterceptor的格式(参见RailsCast 206中的注释)
括号内的电子邮件地址表示电子邮件在生产时发送到的地址。它会通过您在DevelopmentMailInterceptor中指定的电子邮件将其发送给您。
答案 1 :(得分:0)
邮件主题是在Devise::Mailers::Helpers.headers_for
(源代码here)中生成的,所以最简单的方法就是修补此方法。
答案 2 :(得分:0)
这是一个奇怪的...不得不重新启动我的Mac,之后问题就消失了。