Rails 3工厂女孩+多对多的关系

Noz*_*Noz 6 many-to-many ruby-on-rails-3 factory-bot

目前还没有使用Factory Girl 4.1(我能找到)的最新答案 - 你如何在工厂内建立多对多的关系?

例如,我有使用连接表处于多对多关系的学生教室,到目前为止,我有以下设置:

factory :classroom do
    name "Foo Class"
    ...
end

factory :student do
   name "John Doe"
   ...
end

factory :student_with_classroom, :parent => :student do
    after(:build) {|student| student.classrooms << classroom}
end
Run Code Online (Sandbox Code Playgroud)

然而,这会导致:

NameError:
       undefined local variable or method `classroom' for #<FactoryGirl::SyntaxRunner>
Run Code Online (Sandbox Code Playgroud)

我的尝试在很大程度上是猜测,因为我没有运气找到任何未弃用的语法来实现这一目标.

Noz*_*Noz 19

实际上我设法在这个SO中找到了我正在寻找的一些其他答案的答案:如何在工厂女孩中创建has_and_belongs_to_many关联

factory :classroom do
    name "Foo Class"
    ...
end

factory :student do
   name "John Doe"
   ...
end

factory :student_with_classroom, :parent => :student do
    classrooms {[FactoryGirl.create(:classroom)]}
end
Run Code Online (Sandbox Code Playgroud)