我正在努力解决如何关注对象和计算对象字段的问题。
在我的Django网站上,我有一个个人资料模型:
user = models.ForeignKey(User, unique=True)
name = models.CharField(_('name'), null=True, blank=True)
about = models.TextField(_('about'), null=True, blank=True)
location = models.CharField(_('location'), null=True, blank=True)
website = models.URLField(_('website'), null=True, blank=True)
我的理解是这是使用用户名作为外键。
我希望能够计算并显示我的用户填写的已完成配置文件的数量,以及具有特定“元素/字段”的配置文件的数量? (姓名)*填写。我试过了:
Profile.objects.all().count()
这给了我与用户相同数量的配置文件,我猜测是因为每个用户都有配置文件模型,即使它是空白的。
我不确定如何计算其中包含其中一个字段的配置文件,我也不确定如何计算已完成的已完成“名称”字段的数量。
我试过了:
Profile.objects.all().name.count()
Django在queryset api上有一些很好的文档,但它目前有点过头了
答案 0 :(得分:1)
你应该可以使用它们来获取它们:
Profile.objects.filter(name__isnull=False)