我一直在這個問題上,並且無法做到。我有一個gig
模型和幾個表。在每張表格中,我只需要展示符合特定要求的演出,但是我無法弄清楚一張表格。紅寶石在軌道上。使用示波器和屬性對我的模型在表格中排序
此表必須包含在那裏的演出:
沒有過期(日期屬性不過去)
過期但將填充==真(在過去的日期屬性,但屬性填充真)
表一定不能包含演出,其中:
- 已過期,未填寫。 (在過去和充滿屬性==假日期屬性)
我的範圍:變化的
scope :expiredr, -> { where('gigzonetime <= ?', Time.current.to_datetime)}
scope :notfilled, -> {where(filled: false)}
scope :filled, -> {where(filled: true)}
scope :expired_and_filled, ->() {self.expiredr.merge(self.filled)}
scope :expired_and_notfilled, ->() { self.expiredr.merge(self.notfilled) }
我已經試過負載,例如。
控制器:
def dashboard
if user_signed_in? && !current_user.try(:artist?)
@activegigs = current_user.gigs.notcompleted.where.not(:expired_and_notfilled)
@q = @activegigs.ransack(params[:q])
@dashgigs = @q.result(distinct: true).order(filled: :desc, reviewed: :desc, date: :asc).page(params[:page]).per(20)
else
redirect_to(root_url)
flash[:danger] = "This page is for registered hosts only"
end
end
這給出了一個
RuntimeError at /gigs/dashboard
unsupported: Symbol
OR
@activegigs = current_user.gigs.notcompleted && current_user.gigs.expired_and_filled && current_user.gigs.notexpired
這隻能說明expired_and_filled演出。
我不知道如何否定expired_and_notfilled範圍或者如果這甚至是必要的。任何建議,將不勝感激,謝謝。
這似乎確實有效。謝謝,我不知道如何進行'OR'查詢。 –