美好的一天伙计们!
我在用着find_by_sql()在 Rails 3 中按如下方式获取记录。
@list=Email.find_by_sql(["SELECT * FROM Emails WHERE sent_id=?",params[:id]])
如果多个参数适用于同一属性,如何修改同一语句,例如:
@list=Email.find_by_sql(["SELECT * FROM Emails WHERE (sent_id=? OR from_id=?)",params[:id],params[:id]])
在这里,两者sent_id and from_id属性接收相同的参数参数[:id]
所以,不要传递相同的参数[:id]两次,是否有任何机制可以根据顺序传递参数?
您可以使用哈希来命名插值,如下所示:
@list = Email.find_by_sql(["SELECT * FROM Emails WHERE (sent_id = :id OR from_id = :id)", {:id => params[:id]}])
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)