2014-04-16 44 views
0

檢查結束時間<範圍內的Time.now。檢查結束時間<範圍內的Time.now

我有一個定義了「ends_at的時間和檢查的方法,如果是「過度」:

def end_time 
    created_at + ends_at.day 
end 

def over? 
    end_time < Time.now 
end 

我擔心我的解決方案是不完全正確:

def self.ended 
    Campaign.all.select {|c| c.over? == true} 
end 
+0

是什麼'ends_at.day'嗎? – zeantsoi

+0

@zeantsoi這是用戶輸入的天數。 (輸入整數) – user3458697

+0

你能否確認'end_time'返回一個'Time'對象? – zeantsoi

回答

0

注意,在你得到的解決方案全部從數據庫的競爭,然後看看哪一個檢查條件,這不是一個好主意...... 另外,爲什麼你不存儲數據庫結束的日期?這應該更容易。

嘗試這樣:

def self.ended 
    Campaign.where(created_at > ?, Time.now - ends_at.day) 
end 
+0

'未定義的局部變量或方法'end_time'' – user3458697

+0

對不起,沒有看到end_time是一種方法,我更新了現在的答案 – rodeleon

+0

'未定義的局部變量或方法'ends_at'' – user3458697

相關問題