我使用FactoryGirl寶石創建以下工廠:錯誤與工廠女孩的Rails on Rails的複雜廠5
FactoryGirl.define do
conta_origem = FactoryGirl.create(:conta_pessoa_fisica)
conta_destino = ''
tipos = LogTransacao.tipos.keys
params = { conta_origem: conta_origem, conta_destino: conta_destino, tipo: tipos[0] }
codigo_transacional = LogTransacaoHelper::Gerador.codigo_alphanumerico(params)
factory :log_transacao_carga, class: LogTransacao do
codigo_transacional { codigo_transacional }
tipo { tipos[0] }
estornado { false }
valor { 0 }
conta_origem_id { conta_origem.id }
conta_origem_valor_antes_transacao { conta_origem.saldo }
end
end
conta.rb
FactoryGirl.define do
factory :conta do
nome { Faker::Name.name }
saldo { 0 }
status { 1 }
factory :conta_pessoa_fisica do
pessoa_type { 'PessoaFisica' }
pessoa_id { FactoryGirl.create(:pessoa_fisica).id }
end
end
end
所以,我發現了以下錯誤:
find': Factory not registered: pessoa_fisica
當我使用FactoryGirl.create工廠內也沒有發生此問題「:log_transacao_carga」。
conta_origem_id {FactoryGirl.create(:conta_pessoa_fisica).ID}
但是,如果我這樣做,我不能用同一個工廠來填充 conta_origem_valor_antes_transacao。所以,我需要在log_transacao_carga工廠之前創建這個工廠。
請問有人可以幫助我嗎?
嘿,@Dimitry_N,我會檢查這個特質。我沒有使用它,因爲我一直使用嵌套工廠,並且它一直運行到此刻之前。 我不知道特質,所以我會盡量使用它。謝謝您的幫助。 –