2009-07-31 41 views
2

我正在努力研究如何遵循关系和计算对象的字段。使用Django计算和过滤数据库中的对象

在我的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一些很好的文档,但它目前正一点点在我头上

  • 请原谅我使用不正确的术语。

回答

1

你应该能够使用这些来

Profile.objects.filter(name__isnull=False) 
相关问题