工厂女孩has_one协会创建混乱

时间:2014-08-02 20:17:49

标签: ruby-on-rails-4 factory-bot

我有以下两种模式:

分类

category_name

技能(has_one:category)

skill_name
skill_desc
category_id

我的困惑在于,我如何为类别和技能制作简单的Factory Girl对象?

1 个答案:

答案 0 :(得分:4)

FactoryGirl.define do
      factory :category do
          category_name 'Name'              
      end
end

FactoryGirl.define do
      factory :skill do
          skill_name 'Name'  
          skill_desc 'Desc'
          category { create(:category) }            
      end
end

我建议您查看Faker gem,以便将独特的文本注入模型中。添加任何唯一验证后,这将非常有用。

另外,IMO,用表的名称命名pre-pend列名是多余的。

为了清楚起见,因为你的技能表有类别外键,它被认为是rails术语中的“belongs_to category”,而不是“有一个”。