這裏是一個工作版本,你可以包括在像app/initializer/active_record_scopes_extension.rb
一個初始化每個模型reling。
並且只需致電MyModel.created(DateTime.now)
或MyModel.updated(3.days.ago)
。
module Scopes
def self.included(base)
base.class_eval do
def self.created(date_start, date_end = nil)
if date_start && date_end
scoped(:conditions => ["#{table_name}.created_at >= ? AND #{table_name}.created_at <= ?", date_start, date_end])
elsif date_start
scoped(:conditions => ["#{table_name}.created_at >= ?", date_start])
end
end
def self.updated(date_start, date_end = nil)
if date_start && date_end
scoped(:conditions => ["#{table_name}.updated_at >= ? AND #{table_name}.updated_at <= ?", date_start, date_end])
elsif date_start
scoped(:conditions => ["#{table_name}.updated_at >= ?", date_start])
end
end
end
end
end
ActiveRecord::Base.send(:include, Scopes)
這並沒有解決這個問題。同樣的錯誤。 – pixelearth
如果您發佈了實際的初始化程序代碼以及文件的位置,這將會很有幫助。 –