私は現在、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>
どんな助けでも大歓迎です。