我目前正在使用 Ruby On Rails 3.2 创建一个包含多个独特模型的数据库的小项目。每个模型都有许多元素,每个元素都有可能属于许多模型。我已经能够通过以下方式设置模型:
class Model < ActiveRecord::Base
has_many :model_elements
has_many :elements, :through => :model_elements
attr_accessible :elements, :name, :notes, :ref
end
class Element < ActiveRecord::Base
has_many :model_elements
has_many :models, :through => :model_elements
attr_accessible :elementType, :name, :notes, :ref
validates_presence_of :name
end
class ModelElement < ActiveRecord::Base
belongs_to :Model
belongs_to :element
attr_accessible :model_id, :created_at, :element_id
end
我的问题是如何将多个元素添加到单个模型中?我试图找到一些文档,但我找不到任何东西。目前我正在尝试执行以下操作:
@model.elements = @element
其中@element 是一个预定义的元素,但它会引发以下错误:
undefined method `each' for #<Element:0x007ff803066500>
任何帮助将不胜感激。