我正在模型中运行sql请求以获取一些相关数据。
我有一个名为newScoring
和["_646_maturity", "_660_maturity", "_651_maturity", "_652_maturity", "_641_maturity"]
的数组
newScoring.each do |e|
numero = e.from(1).to(-10) // remove text to get only number : 646
sql = "SELECT * FROM pratiques WHERE numero LIKE '%"+numero+"%'" // sql request to get a pratique with numero equal to my previous number
records_array = ActiveRecord::Base.connection.execute(sql)
Rails.logger.debug "SQL : "+records_array
end
我登录records_array.inspect
时得到
[{"id"=>1, "numero"=>646, "titre"=>"Acquérir en priorité des équipements reconditionnés", "ponderation"=>3, "texte_kpi"=>"% du parc reconditionné", "section"=>"achats-responsables", "created_at"=>"2019-06-03 14:10:14.228234", "updated_at"=>"2019-06-03 14:10:14.228234"}]
我想访问ponderation
值,但没有找到任何相关文档。我尝试了其他操作,但是在字符串转换时出现了错误消息。
感谢您的帮助!
答案 0 :(得分:0)
由于records_array
是一个哈希数组,因此您需要先选择所需的行(哈希),然后访问所需的列:
records_array.first['ponderation'] # or records_array[0]['ponderation']
=> 3
顺便说一句,如果您在Rails上,为什么不为practiques
生成模型并使用ActiveRecord?