繁体   English   中英

过滤 Django 查询过滤

[英]Filtering Django query filtering

我目前正在做一些查询,我想知道我是否能够从这 3 个模型中查询一些东西,其中返回会给我用户正在处理的所有项目。 我知道基本过滤,但是在这种情况下还不够,一个 go 将如何通过 2 个外键进行查询。

class User(models.Model):
    first_name = models.CharField(max_length=255)
    last_name = models.CharField(max_length=255)
    email = models.EmailField()

class ProjectUser(models.Model):
    project = models.ForeignKey("Project", on_delete=models.CASCADE)
    user = models.ForeignKey("User", on_delete=models.CASCADE)
    is_lead = models.BooleanField(default=False)

    class Meta:
        unique_together = (("project", "user"),)

class Project(models.Model):
    name = models.CharField(max_length=255)
    client = models.CharField(max_length=255)
    complete = models.BooleanField(default=False)

您可以获得user正在使用的Project

Project.objects.filter(
    projectuser__user=
)

双下划线用于“透视”关系。 此外,如果未指定,默认的related_query_name=…参数 [Django-doc]是 model 的小写名称。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM