Çalıştığım uygulamanın fabrikalarını oluşturmak için factory_boy kullanıyorum. başka bir modele birebir ilişkisi olan bir modelin fabrikasını oluşturmaya çalışırken bir sorun yaşıyorum.Fabrikada birebir ilişki - Bütünlük Hatası
İşte modeller şunlardır:
class Playlist(AccountDependantMixin, models.Model):
test = models.OneToOneField('core.PlaylistTest', related_name='playlist')
class PlaylistTest(Test):
pass
AccountDependantMixin ekstra bilgileri içeren bir sınıftır. Dışarıda çünkü diğer modellerin de ihtiyacı var. Farklı türden testlerim var.
self.playlist = PlaylistFactory(creator=AdminUserFactory(account=self.account))
alıyorum şu: Ben fabrika örneğini başlatmak için çalışıyorum burada nasıl
class PlaylistTestFactory(factory.DjangoModelFactory):
class Meta:
model = PlaylistTest
class PlaylistFactory(factory.DjangoModelFactory):
class Meta:
model = Playlist
test = factory.SubFactory(PlaylistTestFactory)
Ve edilir: PlaylistTest boş olmasının nedeni budur
Bu
fabrikalardır hata:IntegrityError: null value in column "test_id" violates not-null constraint
DETAIL: Failing row contains (1, , playlist0, sub_title0, description0, 0, t, f, 2016-03-31 12:49:23.739207+00, 0, 2, 1, null)
AccountDependantMixin nedir? –
@daniel Ek bilgi içeren bir sınıf. Dışarıda çünkü diğer modellerin de ihtiyacı var. –
'PlaylistTestFactory' içinde hiçbir özniteliğiniz yok, belki de ilgili nesne neden oluşturulmuyor ve null olarak ayarlanmış mı? – v1k45