【问题标题】:Set subject from ActionMailer template in Rails 3?在 Rails 3 中从 ActionMailer 模板设置主题?
【发布时间】:2011-11-27 10:48:26
【问题描述】:

如何从 Rails 3 ActionMailer 模板设置主题?

我想把主体和主体放在一起。

在 Rails 2 中,您可以执行以下操作:

<% controller.subject = 'Change of subject' %>

(来自http://www.quirkey.com/blog/2008/08/29/actionmailer-changing-the-subject-in-the-template/

【问题讨论】:

    标签: ruby-on-rails email actionmailer


    【解决方案1】:

    要从电子邮件视图本身设置电子邮件的主题行,您只需将以下内容放在视图文件的开头:

    <% message.subject = 'This is my subject line' %>
    

    这适用于轨道 3 和 4。

    【讨论】:

      【解决方案2】:

      http://edgeguides.rubyonrails.org/action_mailer_basics.html

      这里说:

      class UserMailer < ActionMailer::Base
      default :from => "notifications@example.com"
      
      def welcome_email(user)
        @user = user
        @url  = "http://example.com/login"
        mail(:to => user.email, :subject => "Welcome to My Awesome Site")
        end
      end
      

      如果你想从视图中访问它:

      http://apidock.com/rails/ActionMailer/Base

      如果您需要访问视图中的主题、发件人或收件人,您可以通过消息对象来实现:

       You got a new note from <%= message.from %>!
       <%= truncate(@note.body, 25) %>
      

      所以你可以这样做:

      message.subject
      

      【讨论】:

      • 不,我想从模板中设置主题,而不是在邮件代码中。
      • @David 这个答案在我看来是正确的。您应该考虑相应地标记它。
      猜你喜欢
      • 1970-01-01
      • 2011-06-23
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-19
      相关资源
      最近更新 更多