2011-09-08 10 views
1

可能性の重複:
How to make has_many :through association with fixtures?FactoryGirlで多対多関連はどのように機能しますか?

私は私のテストデータを構築するために使用FactoryGirlを試してみました。しかし、私は多対多の関係を構築する方法を知らない。

最後に、私はスニペットグーグル・コピーを-貼り付けます。

factory :tagging do 
    question { |a| a.association(:question) } 
    tag { |a| a.association(:tag) } 
end 

(タギングによる質問にhas_manyタグを、その逆)

それがうまく機能し。しかし、この奇妙な構文は何ですか?属性名の後にブロックを置くとどうなりますか?正式なreadmeは私に言わなかった。

誰かに助けてもらえますか?

答えて

0

taggingモデルには、少なくとも2つの列があります:question_idtag_idです。手動で設定することはできますが、その前に新しいオブジェクトを作成する必要があります。 FactoryGirlはあなたのためにそれを関連付け機能によって行います。新しいオブジェクト(そのオブジェクトのファクトリを関連関数の引数として指定する)を作成し、そのIDを取得して適切なフィールドに設定します。

関連する問題