祖先宝石说"undefined method `ancestry' for..."



我已经在gemfile:中安装了祖先宝石

gem "ancestry", "~> 2.0.0"

型号:

class Category < ActiveRecord::Base
  attr_accessible :..., :name, :..., :ancestry, :..., :...
  #acts_as_tree
  has_ancestry cache_depth: true
  has_many :cars
end

当我在视图中加载相应的类别时:

- category = Category.where('my_category_id = ?', @game.car_category_id)
%div= category.inspect

输出为

[#<Category id: 58, name: "Name", ..., created_at: "2013-11-22 15:00:01", updated_at: "2013-11-24 14:54:06", ancestry: "7", car_category_id: 6205>]

因此,在列中,祖先7的值。当我尝试显示这个值时,=category.祖先,结果是:

undefined method `ancestry' for #<ActiveRecord::Relation:0x007fce5e61dcb0>

当我试图检查该值时也是如此。。。

我在这里做错了什么?为什么我不能使用祖先值?

感谢

获取一个真实实例,因此替换:

category = Category.where('my_category_id = ?', @game.car_category_id)

带有:

category = Category.where('my_category_id = ?', @game.car_category_id).first

顺便说一句,这应该在你的控制器中完成。在你看来不是。(使用作用域不会有伤害:))

相关内容

  • 没有找到相关文章

最新更新