我正在使用Ruby on Rails 3.0.9,RSpec-rails 2和FactoryGirl.我试图陈述一个工厂协会模型,但我遇到了麻烦.
我有一个factories/user.rb如下文件:
FactoryGirl.define do
factory :user, :class => User do
attribute_1
attribute_2
...
association :account, :factory => :users_account, :method => :build, :email => 'foo@bar.com'
end
end
Run Code Online (Sandbox Code Playgroud)
和以下factories/users/account.rb文件:
FactoryGirl.define do
factory :users_account, :class => Users::Account do
sequence(:email) {|n| "foo#{n}@bar.com" }
...
end
end
Run Code Online (Sandbox Code Playgroud)
上面的示例在我的spec文件中按预期工作,但如果在factory :users_account语句中我添加了association :user代码,那么
FactoryGirl.define do
factory :users_account, :class => Users::Account do
sequence(:email) {|n| "foo#{n}@bar.com" }
...
association :user
end
end
Run Code Online (Sandbox Code Playgroud)
我收到以下错误:
Failure/Error: Unable to …Run Code Online (Sandbox Code Playgroud)