我正在尝试让类别对象返回名称"喜剧",但正在返回"类别"相反,当我调用名称方法。不知道在哪里寻找解决这个问题所以如果有人能指出我正确的方向,我将不胜感激。
来自命令链接的pry响应:
[17] pry(#<QueueItem>)> category
=> [#<Category id: 1, name: "Comedy", created_at: "2014-03-17 19:21:34", updated_at: "2014-03-17 19:21:34">]
[18] pry(#<QueueItem>)> category.name
=> "Category"
谢谢!
答案 0 :(得分:2)
从上面的代码和输出看来,类别变量似乎存储了一个类ActiveRecord对象的数组。所以我们需要通过以下代码使用该对象。
category.first.name
答案 1 :(得分:0)
只是澄清一下,如果我们尝试使用控制台category.class
,我们应该得到:
> category.class
# ActiveRecord::Relation::ActiveRecord_Relation_Category
这就是为什么它没有为Array抛出Error,未定义的方法name
,只是因为它不是一个数组,而Rails Active Record Relations确实有一个名称方法
实际上,我从未使用pry
,但默认的rails控制台会在数据之前转储类名:
> category
#<ActiveRecord::Relation [#<Category id: 1, ....>, #<Category id:2 ...>, .. etc]
这非常有用。