0
我有報告,其中包含日期。現在我想在一年的某個特定周內找到所有的報告。我所擁有的是這樣的:按年份周查找ActiveRecord對象
class Model < ActiveRecord::Base
attr_accessible :date
def self.find_by_week(week, year)
Model.all.find_all do |model|
model.date.year == year and model.date.strftime("%W").to_i == week
end
end
end
但恐怕當軟件已經積累了數千預計其報告該解決方案可能不是很高性能。有更好的解決方案嗎?
如果重要,我在開發中使用SQLite3,但生產數據庫將是MySQL。雖然我想一個解決方案,爲DB-獨立的,如果可能的話...
那麼它包括第二個星期一?我必須刪除最後一天? – Lanbo
我認爲它會在10月1日星期一00:00:00到10月8日星期一00:00:00,這意味着第二個星期一不會被包括在內,但是我沒有用過這麼多。我會建議設置一些測試。 –
我已經解決了'date.take(7)',這似乎是正確的。 – Lanbo