工厂女孩铁路模特协会的特征

时间:2014-04-03 07:15:45

标签: ruby-on-rails factory-bot

我试图设置我的工厂女孩​​,当我通过create(:user, :admin)时,它将创建一个用户并在角色模型/表中添加记录。我的关联是,用户has_one角色,角色belongs_to用户

这是我工厂女孩的设置

FactoryGirl.define do
  factory :user do
    name                   "Test User"
    email                  "test_user@serviceseeking.com.au"
    contact_phone          "0412345678"
    password               "123123"
    password_confirmation  "123123"
    skip_email_validation  true

    trait :as_admin do
      factory(:role) { name  "Untouchable" }
    end

  end
end

但出于某种原因,它并没有创造这个角色。

1 个答案:

答案 0 :(得分:0)

你得到了什么错误?

我认为你应该收到错误,说没有名为:admin的特征。如果您想通过调用create(:user, :admin)来创建管理员用户,则必须将您的特征命名为:admin

其次我也认为你想在:admin特征中做的是:

trait :admin do
  role name: "Untouchable"
end

如果您已设置关联并且Role的工厂名为:role,则应创建名为Role的{​​{1}}条记录,并将其与您的用户关联。

我希望这有帮助!