Tag: django queryset

Django查询date时间超过5小时的对象

我试图写一个Django查询超过5个小时的小部件,我有点失落。 小部件模型有一个DateTimeField ,它被填充了小部件的创build时间。

“RelatedManager”对象不是可迭代的Django

嘿,我已经环顾了一些在这里的simliarpost,但没有发现任何已经解决了我的问题。 我有以下型号, from django.db import models class Areas(models.Model): name = models.CharField(max_length = 120) order_in_sidebar_network = models.IntegerField(blank=True, null=True) order_in_section_network = models.IntegerField(blank=True, null=True) def __unicode__ (self): return self.area_name class Meta: verbose_name_plural = "Areas" verbose_name = "Area" class Countries(models.Model): name = models.CharField(max_length = 120, help_text = "The name of the country") area = models.ForeignKey(Areas, verbose_name = 'Area') def […]

按字段获取不同的Queryset值

我有这个模型: class Visit(models.Model): timestamp = models.DateTimeField(editable=False) ip_address = models.IPAddressField(editable=False) 如果用户在一天内访问多次, 如何根据ip字段筛选唯一的行? (我想要今天的独特访问) today = datetime.datetime.today() yesterday = datetime.datetime.today() – datetime.timedelta(days=1) visits = Visit.objects.filter(timestamp__range=(yesterday, today)) #.something? 编辑: 我看到我可以使用: Visit.objects.filter(timestamp__range=(yesterday, today)).values('ip_address') 得到只有ip字段的ValuesQuerySet。 现在我的QuerySet看起来像这样: [{'ip_address': u'127.0.0.1'}, {'ip_address': u'127.0.0.1'}, {'ip_address': u'127.0.0.1'}, {'ip_address': u'127.0.0.1'}, {'ip_address': u'127.0.0.1'}] 如何过滤这个唯一性没有评估QuerySet和采取数据库命中? # Hope it's something like this… values.distinct().count()

Django的Queryset与反向外键过滤

我有以下的Django模型: class Make: name = models.CharField(max_length=200) class MakeContent: make = models.ForeignKey(Make) published = models.BooleanField() 我想知道是否有可能(无需直接编写SQL)生成一个查询集,其中包含所有的Make和每个相关的MakeContent ,其中published = True 。

Django SUM查询?

我有一个类似于以下的查询: SELECT SUM(ISNULL(table.name)) FROM table 这个SUM如何转换成Django中的QuerySet? (即什么操作xyz它转化为像MyModel.objects.xyz() ?))

TypeError:'RelatedManager'对象不可迭代

Django的 我有下一个型号: class Group(models.Model): name = models.CharField(max_length=100) parent_group = models.ManyToManyField("self", blank=True) def __unicode__(self): return self.name class Block(models.Model): name = models.CharField(max_length=100) app = models.CharField(max_length=100) group = models.ForeignKey(Group) def __unicode__(self): return self.name 比如块b1有g1组。 通过它的名字,我想从组g1中获取所有块 。 我写了下一个recursion函数: def get_blocks(group): def get_needed_blocks(group): for block in group.block_set: blocks.append(block) if group.parent_group is not None: get_needed_blocks(group.parent_group) blocks = [] get_needed_blocks(group) return blocks […]

如何在Django中执行SELECT COUNT(*)GROUP BY和ORDER BY?

我正在使用事务模型来跟踪系统中的所有事件 class Transaction(models.Model): actor = models.ForeignKey(User, related_name="actor") acted = models.ForeignKey(User, related_name="acted", null=True, blank=True) action_id = models.IntegerField() …… 我如何获得系统中的前五名演员? 在SQL中,它将基本上是 SELECT actor, COUNT(*) as total FROM Transaction GROUP BY actor ORDER BY total DESC

Django查询相关的字段数

我有一个应用程序,用户创build页面。 我想运行一个简单的数据库查询,返回有多less用户创build了2页以上。 这实际上是我想要做的,但当然这不是正确的方法: User.objects.select_related('page__gte=2').count() 我错过了什么?

如何获得使用django bulk_create创build的对象的主键

有没有办法使用django 1.4+中的bulk_createfunction来获取您创build的项目的主键?

如何创build一个Django查询集filter,比较同一模型中的两个date字段

尝试获取我的Solr索引中活动logging陈旧的查询。 我想检查数据库中的Activity.updateddate是否大于同一logging的Activity.added_toSolr_date 。 stale_activities_queryset = Activity.objects.filter(updated__gte = self.added_toSolr_date) 模型 class Activity(models.Model): # Last time entry / metric was updated in the Activity model database updated = models.DateTimeField( verbose_name="CRUD date") # When it was added to Solr Index Date added_toSolr_date = models.DateTimeField(blank=True, null=True, verbose_name="Added to Solr Index Date") 我引用了Django查询文档: https : //docs.djangoproject.com/en/1.4/ref/models/querysets/和样本的unit testing: https : //github.com/django/django/blob/master/tests/ […]