作者suomax (shadow)
看板Ruby
标题Re: [问题] ActiveRecord 日期查询的问题
时间Wed May 30 10:22:54 2007
感谢 godfat,这样看起来简洁多了 @@
我现在的作法是在 model 里面宣告 find_by_year, find_by_month,
find_by_date 等等的 method
以 find_by_year 为例
def Diary.find_by_year(year)
find(:all,
:conditions => ["date between ? and ?",
#{year}-01-01", "#{year}-12-31"],
:order => 'date')
end
不知道这样的查询方式会不会很操 DB? @@"
还有一个问题,
我在 User model 里面有定义 has_many :diaries, :order => 'date'
用 some_user.diaries 取得的 diaries 是按照 date 排列没错。
但是像 find_by_date,若里面的 find 加上 :order 参数,
用 some_user.diaries.find_by_year(year) 读出来的 diaries 仍然是按
照 id 来排列。
想知道的是 has_many ... :order 这个参数是在什麽状况下作用的?
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 210.69.49.253
1F:推 yzugsr:记得create index on date就不会操db 基本查询 05/30 12:38
2F:推 suomax:感恩 @@ 06/01 17:58