0

Noteオブジェクトをアタッチしています。FactoryGirlでCourseランダムににを設定したいと思い@note.numberます。rand(@note.course.sections)私は試した:

  factory :note do
    association :course
    number { ranb(course.sections) }
    content { Faker::Lorem.paragraphs(paragraph_count = 1).join(" ") }
  end

それは機能せず、コースはゼロであると言います。これを行う正しい方法は何ですか?ありがとう!

4

1 に答える 1

1

Course#sectionsとの関係がわかりません。また、ファクトリNote#numberを定義したと想定することしかできません。Course私は以下をテストしました、そしてそれはうまく働きます:

FactoryGirl.define do
  factory :course do
    sequence(:sections)
  end

  factory :note do
    course
    number { rand(course.sections) }
  end
end


note = FactoryGirl.create(:note)
# => <Note id: 11, course_id: 12, number: 6, ...>
note.course
# => <Course id: 12, sections: 9, ...>
于 2013-03-09T20:52:51.530 に答える