学习红宝石(或尝试。)
我正在使用Mysql2 gem来查询我知道只返回一条记录的数据(LIMIT 1.)但是,Mysql2返回一个Mysql2 :: Result,我必须迭代才能得到我的值:
client2.query("SELECT `Parent_ID`,`Path` FROM `Categories` WHERE (`ID` = 83) LIMIT 1").each do |row|
local_var = row['Path']
end
当然,local_var不在范围内,因此该方法不会将该变量设置为在该脚本的其余部分中在循环外部使用。
不应该这么难。 :)
谢谢!
答案 0 :(得分:1)
找到以下答案:
Ruby / MySQL fetching single row but still using .each?
无需循环。只需先调用Mysql2 :: Result
local_var = row.first['Path']
答案 1 :(得分:0)
您的问题是如何获取模型而不是模型数组?
模型如果您需要名称:
Category.find(83).name
一系列模型
如果您需要每个人的名字:
# Find by the ID
Category.all.each do |result|
result.name
end
# Find by one attribute
Category.find_all_by_cod(83).each do |result|
result.name
end