NoMethodError:未定义的方法`deliver_now'

Bru*_*uno 16 ruby-on-rails

我在我的控制器中有这个:

  def create
    @user = User.new(user_params)
    if @user.save
      UserMailer.account_activation(@user).deliver_now
    ....
  end
Run Code Online (Sandbox Code Playgroud)

我一直收到这个错误:

NoMethodError: undefined method `deliver_now' for #<ActionMailer::MessageDelivery:0x007ffa6646eb60>
Run Code Online (Sandbox Code Playgroud)

任何想法为什么它没有找到deliver_now方法?

kat*_*akt 29

deliver_now已经在rails 4.2.beta2中引入.您可能正在使用早期版本.


Fre*_*rin 14

我认为这是因为它deliver(或者deliver!是爆炸版本)而不是deliver_now.

请参阅ActionMailer :: Base


小智 8

deliver而不是deliver_now旧版本的Rails.