RoR:在控制器中执行SQL [英] RoR: Execute SQL in controller
本文介绍了RoR:在控制器中执行SQL的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
在RoR中,在控制器中,我们可以看到如下行:
def index
@books = Book.all
end
如何将@book=Book.all替换为实际的SQL查询,如SELECT*FROM BOOK
我尝试了如下操作,但没有成功:
def index
sql = 'Select * from books'
@books = ActiveRecord::Base.connection.execute(sql)
end
在浏览器中,我看到以下错误消息:
#Hash:0x00007f8dbae412f0的未定义方法`title‘
推荐答案
按活动记录查找_by_sql方法是可行的。
def index
@books = Book.find_by_sql('Select * from books')
end
引用:https://guides.rubyonrails.org/active_record_querying.html#finding-by-sql
这篇关于RoR:在控制器中执行SQL的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文