在下面的示例中,在框控制器或视图中显示item_category.name属性的正确方法是什么?
class Box < ActiveRecord::Base
has_one :item, :dependent => :destroy
accepts_nested_attributes_for :item, :allow_destroy => true
end
class Item < ActiveRecord::Base
belongs_to :box
belongs_to :item_category
end
class ItemCategory < ActiveRecord::Base
has_many :items
#contains 'name' attribute
end
我预计会有一些像这样的语法不起作用:
<%= @box.item.item_category.name %>
这给了我以下错误“nil的未定义方法`名称:NilClass”
由于
编辑: 抱歉,item类包含belongs_to item_category(非公司),我编辑了示例。
答案 0 :(得分:0)
由于您的关联设置正确,可能会发生这种情况,因为您的Item
没有关联的类别,这意味着其item_category_id
字段为nil
。