0
我試圖解決的問題是確定用戶上個月是否創建了「提示」。此檢查將在用戶創建新提示後完成。如何搜索日期數組以確定一個或多個是否在指定範圍內
我有一個名爲「tip_dates」的用戶過去的提示日期字符串數組。我現在使用rails的解決方案遍歷數組中的每個值,將其轉換爲日期,並檢查它是否在一個月內。
這是最有效的解決方案嗎?我擔心,當日期數組變大時,此檢查可能需要很長時間。
def tip_last_month
start_date = Date.today.beginning_of_month - 1.month
end_date = start_date.end_of_month
for tip_date in self.tip_dates do
if tip_date.to_date.between?(start_date, end_date)
return true
end
end
return false
end
謝謝!在這種情況下,對於這個陣列來說,什麼是「大」?基本上,你會優先考慮解決這個性能問題? – TCEchicago
如果應用程序的主要域名是圍繞提示,或者我希望用戶會隨着時間的推移定期添加提示(因此每個用戶的提示數量將隨之增加)。基本上,我會隨時單獨列出一張表,除非應用程序非常簡單,不值得花時間設置單獨的表格。 :) – kriskova
非常感謝你的時間和周到的答案!根據你的回答,我認爲我在眼前是沒問題的。 – TCEchicago