我的django灯具包含以下数据:
- model: CkProject.NotificationType
pk: 1
fields:
name: comment
message: commented on your project
当我运行python manage.py syncdb
时,它会在加载灯具时显示错误:
raise base.DeserializationError("Invalid model identifier:
'%s'" % model_identifier)
django.core.serializers.base.DeserializationError: Problem installing fixture
'....../source/apps/CkProject/fixtures/initial_data.yaml':
Invalid model identifier: 'CkProject.NotificationType'
我甚至尝试使用json文件而不是YAML,并返回相同的错误。
UPDATE:
这是我的models.py,它位于apps / Notification / models.py
class NotificationType(models.Model):
class Meta:
db_table = 'CkProject_notificationtype'
name = models.CharField(max_length=50)
message = models.TextField()
def __unicode__(self):
return self.name
答案 0 :(得分:3)
您可能已将模型从apps/CKProject/models.py
移至apps/Notification/models.py
,因此其app_label已更改,现在Django将模型标识为Notification.NotificationType
。你应该相应地更新你的夹具。
或者,您也可以将app_label = 'CKProject'
(请参阅:app_label)添加到NotificationType的Meta对象,以使Django再次将其识别为CKProject.NotificationType
。