我有一个分类表,基于知道类别名称(它是唯一的),我希望能够获得ID。
在rails控制台中,我尝试了
cat = Category.where("name = ?", "Food")
成功找到了该对象,但输入cat [:id]给了我“TypeError:无法将Symbol转换为整数”。我做错了什么?
答案 0 :(得分:0)
请尝试使用find_by_name
。
cat = Category.find_by_name('Food')
puts cat.id
where
返回一个数组(井,类似数组)对象。因此,您可以使用cat = Category.where('name = ?', 'Food').first
。 find方法也会做同样的事情,但看起来也更干净。
答案 1 :(得分:0)
cat = Category.where("name = ?", "Food").first
id = cat.id