我有
Shop.includes(:opening_times)
.where("opening_times.day =?", Time.now.wday)
.where("opening_times.opens > ?", @now)
.order("opening_times.opens")
.references(:opening_times)
.limit(12)
每当它在两个开放时间到达商店时,它只返回11个商店。我想它限制在12个开放时间而不是12个商店。如何指定我要限制12个商店,而不是12个开店时间?
奇怪的是,只有在我按开放时间订购时才会发生这种情况。如果我带走.order("opening_times.opens")
,它将返回12家商店。
答案 0 :(得分:1)
也许你的一个商店有2个opening_times记录,你的SQL引擎都会返回它们。
尝试添加如此不同的内容:Shop.distinct.includes(:opening_times).where...