2011-06-20 65 views
1

我正在爲用戶發佈網站以發佈他們希望出售門票的活動。有效記錄條件下的Ruby on Rails邏輯

我正在寫一個查詢,其中的條件是如下:

  • 活躍等於true
  • sales_stop是< Time.now

我遇到的問題是未來與測試記錄的sales_stop時間是否小於Time.now的條件。

下面是我到現在爲止:

@events = Event.paginate :page => params[:page], 
     :conditions => {:active => true}, 
     :order => "created_at DESC" 

反過來,我一直在用,沒有運氣的sales_stop條件玩弄左右。

我一直是這樣的:

@events = Event.paginate :page => params[:page], 
     :conditions => {:active => true, :sales_stop < Time.now}, 
     :order => "created_at DESC" 

當然,這是行不通的。

有誰知道我可以如何設置此查詢,以便我只檢索sales_stop屬性小於Time.now的記錄?

謝謝。

回答

1

使用替代語法:條件,使用綁定式:

@events = Event.paginate :page => params[:page], 
     :conditions => ['active = ? AND sales_stop < ?', true, Time.now], 
     :order => "created_at DESC" 
1

這應該工作:

@events = Event.paginate :page => params[:page], 
    :conditions => ['active=? AND sales_stop < ?', true, Time.now], 
    :order => "created_at DESC" 

只是一個不同的語法。

+0

是的,這似乎工作。感謝您的幫助。 – Brian