从模型中调用辅助方法

时间:2015-05-15 14:04:52

标签: ruby-on-rails

对于我的Predictions模型,我在predictions_helper.rb中创建了一个方法,如下所示:

module PredictionsHelper

  def time_in_date(time, date)
    time.between(date..date+1.day)
  end
end

然而,当我这样称呼时:

time_in_date(le.time, date)

我收到以下错误:

NoMethodError:
       undefined method `time_in_date' for PredictionsHelper:Module

2 个答案:

答案 0 :(得分:1)

predictions_helper在Predictions模型的范围内,但是,因为你已经将它放在模块中,所以你需要包含该模块。

所以:

include PredictionsHelper
# code...

PredictionsHelper::time_in_date(le.time, date)

答案 1 :(得分:1)

似乎最简单的方法是将您的模块包含在Predictions类中

class Prediction < ActiveRecord::Base
  include PredictionsHelper
end

这样您就可以访问time_in_date