递归关系以及与Django中未定义模型的关系有什么用?
作者:互联网
以下文字来自Django文档,该文档提供了
To create a recursive
relationship – an object that has a many-to-one relationship with itself – use models.ForeignKey(’self’).
If you need to create a relationship on a model that has not yet been defined, you can use the name of the model,
rather than the model object itself.
有人可以给我一个在Django中使用这些功能的示例吗?
谢谢
解决方法:
您可以使用它来创建指向该模型其他对象的链接.
例如,如果您在一个网站中有很多成员,每个成员都有一个邀请者(也是成员类型),则可以执行以下操作:
class Member(Model):
inviter = models.ForeignKey(
'self',
related_name="invited_set"
)
如果需要邀请者,请执行以下操作:
Member.objects.get(id__exact=5).inviter
如果要此成员邀请的所有成员,请使用:
Member.objects.get(id__exact=5).invited_set
标签:relational-database,python,django,database 来源: https://codeday.me/bug/20191102/1988490.html