ActionMailer Rails : invitation_email.html.erb 文件未读取

ActionMailer Rails : invitation_email.html.erb file not read

我在 Rails 上使用 Action Mailers。我按照文档进行操作,但浏览器无法正确读取 invitation_email.html.erb。 这是 invitation_email.html.erb:

上的代码
<!DOCTYPE html>
<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type" />

    </head>
  <body>
    <h1><%= @sender.first_name %> vous invite à débattre.</h1>
      <p><%= @group_invitation.key %></p>
      <p> Cliquez ici : <%= link_to "Rejoindre", group_accept_invite_url(:key => @group_invitation.key) %>
      </p>
      <div class="button-test">
        button
      </div>
    </body>
</html>

这是我在 group_mailer.rb 上的代码:

  class GroupMailer < ActionMailer::Base
  default from: 'Logora <contact@logora.fr>'
  layout 'mailer'

  def invitation_email(group_invitation)
    @to = group_invitation.guest
    @sender = group_invitation.sender
    @subject = @sender.first_name + ' vous invite à débattre sur Logora'
    @group_invitation = group_invitation
    m = mail(to: @to, subject: @subject, content_type: "text/html")
  end

end

最后,这是我给自己发送电子邮件时收到的消息:

洛戈拉 21:29(我是 7 分钟) À moi

----==_mimepart_5c32651265cd8_16f563ff3a1d01db04642e 内容类型:text/html; charset=UTF-8 内容传输编码:引用打印 测试你邀请=C3=A0 d=C3=A9battre。 uh9sNDoDQbYU7ZYixKZHCCjG

Cliquez ici : Rejoindre

按钮 ----==_mimepart_5c32651265cd8_16f563ff3a1d01db04642e 内容类型:text/html; charset=UTF-8 内容传输编码:引用打印 测试你邀请=C3=A0 d=C3=A9battre。 Cliquez ici : 重新加入 ----==_mimepart_5c32651265cd8_16f563ff3a1d01db04642e--

如有任何帮助,我们将不胜感激!

documentation 所述,传递 :content_type 也期望传递 :body(这将跳过模板渲染步骤)。因此,为了正确呈现模板,我怀疑您需要删除 content_type: "text/html":

mail(to: @to, subject: @subject)

content="text/html; charset=UTF-8" 打字错误,缺少一些双引号。 :)