【发布时间】:2016-06-10 21:02:06
【问题描述】:
我有一个抽象基类,它向用户模型声明了两个外键字段:
class BaseModel(models.Model):
updated = models.DateTimeField(null=True)
updated_by = models.ForeignKey(settings.AUTH_USER_MODEL, null=True, related_name="updated_by")
created = models.DateTimeField(null=True)
created_by = models.ForeignKey(settings.AUTH_USER_MODEL, null=True, related_name="created_by")
class Meta:
abstract=True
我有多个继承自此类的类。当我运行makemigrations 时,对于每个可能的类对以及created_by 和updated_by,我都会收到以下错误:
myapp.ClassA.updated_by:(fields.E305)“ClassB.updated_by”的反向查询名称与“ClassB.updated_by”的反向查询名称冲突。
提示:在 'ClassA.updated_by' 或 'ClassB.updated_by' 的定义中添加或更改相关名称参数。
即使我已经设置了相关名称。它只适用于声明的两个外键字段之一。
一个抽象类中的同一个模型是否可以有两个外键字段,如果可以,我该如何设置?
【问题讨论】:
标签: python django django-models