我使用django-autofixture
为我的数据库实例生成一些随机数据。我的模型如下:
class DummyModel(models.Model):
name = models.CharField(max_length=100)
description = models.CharField(max_length=150, blank=True)
time_points = models.PositiveIntegerField()
more_text = models.CharField(max_length=100, blank=True)
image_type = models.ForeignKey(ImageTypeModel, null=False, blank=False,
default='')
class Meta:
db_table = "dummy"
所以,我有一个永远存在的外键,它不能为NULL。我还使用Django中的fixture功能为这个ImageTypeModel
创建了实例。我删除了所有内容并进行了新的迁移,并验证了ImageTypeModel
数据库表是否存在并已填充。 ImageTypeModel
定义为:
class ImageTypeModel(models.Model):
name = models.CharField(max_length=100)
dims = models.IntegerField()
class Meta:
db_table = "imagetypes"
def __str__(self):
return self.name
def __unicode__(self):
return self.name
现在我尝试使用以下命令创建一些随机数据:
python manage.py loadtestdata myapp.DummyModel:30
然而,这会给我带来这个错误:
django.db.utils.IntegrityError: NOT NULL constraint failed: dummy.image_type_id
我不知道为什么应该这样做,并尝试删除/复制项目到一个新的位置,但没有去。