我有一个名为Beats的模型,它包含名称,状态,组,所有者等字段。我正在使用R Spec编写测试并使用Factory Girl进行模拟,我正面临运行规范的问题,因为 ActiveRecord :: RecordInvalid:验证失败:节拍类型不能为空,我发出错误,我是验证表单的所有字段的存在,有一个BeatType值的下拉列表,它在运行规范时也被调用,是什么方式将它包含在Factory of Beat中?
class Beat < ActiveRecord::Base
has_many :beat_beat_types
has_many :beat_types, through: :beat_beat_types
validates :name,:status,:group,:owner,:beat_types presence: true, length: {maximum: 255}
end
class BeatType < ActiveRecord::Base
has_many :beat_beat_types
has_many :beats, through: :beat_beat_types
end
class BeatBeatType < ActiveRecord::Base
belongs_to :beat
belongs_to :beat_type
end
Factory_File of beat
FactoryGirl.define do
factory :beat do
name
status
group
owner
end
end
答案 0 :(得分:1)
你能否尝试使用
FactoryGirl.define do
factory :beat do
name
status
group
owner
beat_types { build_list :beat_type, 1 }
end