2010-08-30 239 views

回答

27

該文檔解釋了這一切。你不喜歡這樣,當AUTHOR_ID和起始日期是傳遞的參數。

Post.find_by_sql ["SELECT title FROM posts WHERE author = ? AND created > ?", author_id, start_date] 

http://api.rubyonrails.org/classes/ActiveRecord/Base.html#method-c-find_by_sql

+5

參數化SQL和參數本身需要放在數組中的事實在這裏幫助了我。我試圖將它們作爲2個獨立的參數傳遞給find_by_sql。 – Lambart 2013-10-03 20:49:10

-2

這樣做有

一個辦法是布蘭登曾提出的幾種不同的方式。

其他的我會帶布倫丹的例子本身

2 - Post.find(:all, :conditions => "author=#{author_id} and created=#{start_date}")

3 - Post.find_all_by_author_id_and_created(author_id, start_date)

,如果你使用的是軌道3甚至你可以建立你的查詢

http://m.onkey.org/2010/1/22/active-record-query-interface

歡呼聲

sameera