gpt4 book ai didi

python - Django - 模型 - 递归检索叶节点的父节点

转载 作者:行者123 更新时间:2023-11-30 22:41:11 24 4
gpt4 key购买 nike

我有一个用户模型类定义如下:

class CustomUser(models.Model):
user = models.OneToOneField(User)
slug = models.SlugField(max_length=35, unique=True,help_text="URI dell'utente che appare sul browser")
team = models.CharField(max_length=100, null=False, verbose_name="Team")
area = models.CharField(max_length=100, null=False, verbose_name="Area")
line_manager = models.ForeignKey('self', null=True, blank=True,related_name='parent')

我想检索 CustomUser 的所有 line_manager。假设我有:

A
-B
-C

其中 C 是叶子,B 和 A 是我想要检索的值。我该怎么做?

最佳答案

我还没有测试过这个,但它应该可以工作:

class CustomUser(models.Model):
user = models.OneToOneField(User)
slug = models.SlugField(max_length=35, unique=True,help_text="URI dell'utente che appare sul browser")
team = models.CharField(max_length=100, null=False, verbose_name="Team")
area = models.CharField(max_length=100, null=False, verbose_name="Area")
line_manager = models.ForeignKey('self', null=True, blank=True,related_name='parent')

def get_linemanagers(self):
if self.line_manager is None:
return CustomUser.objects.none()
return CustomUser.objects.filter(pk=self.line_manager.pk) | self.line_manager. get_linemanagers()

希望有帮助。

关于python - Django - 模型 - 递归检索叶节点的父节点,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42676085/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com