0

我面临与这里的问题相同的问题。帖子已经过时了。我想知道如何做同样的事情。我的工厂是:

FactoryGirl.define do
  factory :user do
    sequence(:email) {|n| "email#{n}@factory.com" }
    password "foobar"
    password_confirmation { |u| u.password }
    profile
  end
end

FactoryGirl.create(:user)由于用户为空白的配置文件模型中的验证错误而失败。

4

1 回答 1

1

我要做的是使用after_create. 这确保它只在创建用户后创建配置文件。

factory :user do
    sequence(:email) {|n| "email#{n}@factory.com" }
    password "foobar"
    password_confirmation { |u| u.password }
    after_create do |user|
      FactoryGirl.create(:profile, :user => user)
    end
  end

之后可以打电话Factory(:user)

于 2012-05-27T17:23:33.493 回答