NoMethodError:未定义的方法`deliver_now'

时间:2014-10-15 21:00:19

标签: ruby-on-rails

我在控制器中有这个:

  def create
    @user = User.new(user_params)
    if @user.save
      UserMailer.account_activation(@user).deliver_now
    ....
  end

我一直收到这个错误:

NoMethodError: undefined method `deliver_now' for #<ActionMailer::MessageDelivery:0x007ffa6646eb60>

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

3 个答案:

答案 0 :(得分:29)

在rails 4.2.beta2中引入了

deliver_now。您可能正在使用早期版本。

答案 1 :(得分:14)

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

请参阅ActionMailer::Base

答案 2 :(得分:8)

对于旧版本的Rails,

deliver代替deliver_now