在Django中,ForeignKey字段与抽象模型相关联。
- 论坛
- 在Django中,ForeignKey字段与抽象模型相关联。
15 浏览
在Django中,ForeignKey字段与抽象模型相关联。
我有这个模型:
class BaseModel(models.Model): .... class Meta: abstract = True class ModelA(BaseModel): .... class ModelB(BaseModel): .... class MyExtModel(models.Model) myfield = models.ForeignKey(BaseModel)
但这是不正确的,因为我把BaseModel
定义为了Abstract
。实际上,当我尝试运行makemigration
命令时出现了错误。
错误信息如下:
ERRORS: myapp.MyExtModel.myfield: (fields.E300) Field defines a relation with model 'BaseModel', which is either not installed, or is abstract.
有没有办法使用抽象基模型?
我还尝试了以下方式:
myfield = models.ForeignKey(BaseModel, related_name="%(app_label)s_%(class)s_related")