初めてモンゴイドを使用していますが、仕様のファクトリで has_many 関連付けを作成する際に問題が発生しています。
シナリオは次のとおりです。
グループクラスがあります:
class Group
include Mongoid::Document
field :name, :type => String
end
そして、私はエクササイズクラスを持っています。エクササイズは多くのグループに属することができます。エクササイズ クラスは現在、次のように定義されています。
class Exercise
include Mongoid::Document
field :name, :type => String
field :description, :type => String
has_many :groups
validates_presence_of :name, :description
end
factorygirl を使用してスペックのインスタンスを作成したいと考えています。私はこれを行う方法に苦労しています。
現在、私のエクササイズ ファクトリーは次のようになっています。
FactoryGirl.define do
factory :exercise do
name "Preacher curls"
description "Do something"
after(:build) do |exercise|
exercise.groups << FactoryGirl.build(:group)
end
end
end
これにより、次のエラーが発生します。
NoMethodError: undefined method `=' for #<Group _id: 4fbc6f5a26a3181742000004, _type: nil, name: "Arms">
group_ids を追加するためにエクササイズ ファクトリを正しく作成するにはどうすればよいですか?