nil:NilClass的未定义方法'charset ='

时间:2019-02-07 17:03:56

标签: ruby-on-rails ruby

通过我的邮件中的此方法:mail(to: params[:email], subject: "Hello World")。 我尝试发送电子邮件,但出现此错误:undefined method 'charset=' for nil:NilClass 邮件视图:

#newsletter.html.erb
<!DOCTYPE html>
<html>
  <head>
    <meta content='text/html; charset=UTF-8' http-equiv='Content-Type' />
  </head>
  <body>
    Hello World
    </body>
</html>

我使用rails 5.2.2。

编辑:控制器:

class StaticPagesController < ApplicationController

    def inscription_newsletter
        SendInBlueMailer.with(email: params[:mailer][:email]).newsletter.deliver_later
    end

end

邮件程序:

class SendInBlueMailer < ApplicationMailer

    def newsletter
      mail(to: params[:email], subject: "Hello World")
    end

end

1 个答案:

答案 0 :(得分:0)

我通过添加到initialize方法super中解决了这个问题。

class ApplicationMailer < ActionMailer::Base
    layout 'mailer'

    def initialize
        @send_in_blue = SibApiV3Sdk::SMTPApi.new
        super
    end
end