django 2.0模型,别名字段

时间:2018-01-26 10:25:43

标签: python django django-models

我的更高级别目标是在模型之间建立多态关联,我认为我可以使用具有此签名的模型来解决它:

class Relation(models.Model):
   left = ForeignKey(Entity)
   right = ForeignKey(Entity)

   class Meta:
     db_table = 'entities'

然后我可以将Relation扩展为代理,这样我可以更清楚我的左右场意图,例如:

class Authorship(Relation)
   author = AliasField('left')
   content = AliasField('right')

   class Meta:
      proxy = True

那么我们可以做到以下几点: Authorship.objects.filter(author=user_entity) 要么 Authorship.objects.create(author=user_entity)

我的问题是,如何实现上述AliasField功能? 我看过了:

https://shezadkhan.com/aliasing-fields-in-django/

How to create an alias for Django Model field?

对于第一个链接,我收到有关名称的错误不是字段或其他内容 对于第二个,我收到一个错误说"不能适应类型"

这在Django 2.0中甚至可以做到吗? 我不想使用django-polymorphic

谢谢!

0 个答案:

没有答案