Às vezes, precisamos referenciar o modelo em si mesmo. No Rails Active Record parece:
class Member < ActiveRecord::Base
has_many :children, class_name: "Member",
foreign_key: "parent_id"
belongs_to :parent, class_name: "Member"
end
Está bem. Precisamos construir uma fábrica para este referenciamento.
FactoryGirl.define do
factory :member do
parent member
end
end
Não funciona com esse erro:
FactoryGirl::AssociationDefinitionError: Self-referencing association 'member' in 'member'
Aconselho definir parent_id
– 1.
FactoryGirl.define do
factory :member do
parent_id 1
end
end
Funciona e fica bem.