有人可以帮我找出如何覆盖default_scope
.
在我看来,我必须显示所有matches
,不仅{ where("match_date >= now()") }
需要显示所有匹配项。我有理由使用 default_scope。我是 Rails 的新手。我尝试使用 unscoped,但它没有帮助,或者我没有正确使用它。有什么建议么?谢谢!
class Reservation < ActiveRecord::Base
belongs_to :bar_match
end
class BarMatch < ActiveRecord::Base
belongs_to :bar
belongs_to :match
has_many :reservations
end
class Match < ActiveRecord::Base
has_many :bars, through: :bar_matches
has_many :bar_matches, dependent: :destroy
default_scope { where("match_date >= now()") }
end
控制器
@reservations = Reservation.where(user_id: current_user.id)
看法
- @reservations.each do |reservation|
= reservation.bar_match.match