django-1.6.1的补丁,允许您使用postgres的array_accum函数。它在django.db.models中添加函数arrayaccum。使用arrayaccum只能在postgresql上工作。首先安装django-1.6.1,然后安装此软件包。

Django-ArrayAccum的Python项目详细描述


django是一个鼓励快速开发的高级python web框架 干净实用的设计。此修补程序(pypi上的pkg name django array accum)允许您使用postgresql中提供的array_accum函数。此函数将not在其他数据库中工作。如果您对postgresql很满意,并且希望能够在django中使用array_accum(而不是编写自定义sql),那么可以尝试使用这个fork。

这个补丁是为django-1.6.1创建的。安装此修补程序之前,请先安装django-1.6.1。

此修补程序修改两个文件。

  1. django/db/models/aggregates.py
  2. django/db/models/sql/aggregates.py

这将添加一个名为arrayaccum的函数,然后可以在任何涉及聚合的查询中使用该函数(类似于内置的sum、avg等)。

示例用法: 假设您有一个这样定义的模型:

class People(models.Model):
    first_name = models.CharField(max_length=100)
    last_name = models.CharField(max_length=100)

假设您想显示最常见的姓氏、计数、关联的名字,那么您可以这样做:

from django.db.models import Count, ArrayAccum
results = People.objects.values("last_name").annotate(count=Count('id'),
                        unique_first_names=ArrayAccum("first_name", distinct=True)).order_by('-count')

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java如何使用MVC设计模式观察嵌套对象   java将多个客户端连接到服务器   合并Java Web应用程序   Spring Security中未捕获java AuthenticationSuccessEvent   java Firebase JSON到Arraylist内部的Arraylist,存在对象问题   在Java15的sealedclasses特性中,final类和非密封类之间有什么区别?   java我可以使用数组。copyOf制作二维数组的防御副本?   java球不会在屏幕上移动   Java类如何在同一个文件中包含两个类?   java使用“Character.isWhiteSpace”删除所有空白   java阻止在RealmList中保存时创建领域对象   如何仅在ConnectionFactory上使用Java JMS身份验证   spring可以强制java对象在运行时实现接口吗?   socket无法在JAVA中使用TCP启用双工模式通信