如何通过sql
在find中传递参数sql查询答案 0 :(得分:32)
文档解释了这一切。你这样做,其中author_id和start_date是传入的参数。
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
答案 1 :(得分:-2)
有几种不同的方法可以做到这一点
一种方式是布兰登提出的方法。
对于其他人我将采取Brendan的例子
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)
如果您正在使用rails 3,即使您可以构建查询
http://m.onkey.org/2010/1/22/active-record-query-interface
欢呼声
sameera