`
androider
  • 浏览: 748088 次
  • 性别: Icon_minigender_1
  • 来自: 苏州
社区版块
存档分类
最新评论

Django标签之regroup

阅读更多
regroup

把一列相似的对象根据某一个共有的属性重新分组。

要解释清这个复杂的标签,最好来举个例子。比如, people 是包含 Person 对象的一个列表, 这个对象拥有 first_name 、 last_name 和 gender 属性,你想这样显示这个列表:
* Male:
    * George Bush
    * Bill Clinton
* Female:
    * Margaret Thatcher
    * Condoleezza Rice
* Unknown:
    * Pat Smith

下面这段模板代码就可以完成这个看起来很复杂的任务:
{% regroup people by gender as grouped %}
<ul>
{% for group in grouped %}
    <li>{{ group.grouper }}
    <ul>
        {% for item in group.list %}
        <li>{{ item }}</li>
        {% endfor %}
    </ul>
    </li>
{% endfor %}
</ul>

如你所见, {% regroup %} 构造了一个列表变量,列表中的每个对象都有 grouper 和 list 属性。 grouper 包含分组所依据的属性, list 包含一系列拥有共同的 grouper 属性的对象。这样 grouper 就会是 Male 、 Female 和 Unknown , list 就是属于这几种性别的人们。

记住,如果被分组的列表不是按照某一列排好序的话,你就不能用 {% regroup %} 在这一列上进行重新分组!就是说如果人的列表不是按照性别排好序的话,在用它之前就要先对它排序,即:
{% regroup people|dictsort:"gender" by gender as grouped %}
分享到:
评论

相关推荐

    Django客户管理系统源码.zip

    Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统源码 Django客户管理系统...

    Django template 自定义模板标签实现

    在Python的Web开发框架Django中,模板引擎是其核心组件之一,用于渲染HTML和其它类型的数据。模板引擎提供了一种灵活的方式来动态地生成HTML页面。而自定义模板标签则是Django模板系统的一个强大特性,它允许开发者...

    django电子商务网站源码.zip

    django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django电子商务网站源码 django...

    04.Django模板标签之条件标签if和循环标签for.mp4

    Django提供了许多内置的功能和组件,包括:ORM(对象关系映射):Django的ORM允许开发人员使用Python代码来操作数据库,而无需直接编写SQL查询语句。这大大简化了数据库操作的过程,并提高了开发效率。URL映射:...

    Django实现商城网站源码.zip

    Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django实现商城网站源码 Django...

    PYTHON之Django Web框架源码下载

    使用 Django,我们在几分钟之内就可以创建高品质、易维护、数据库驱动的应用程序。 Django框架的核心组件有: 1、用于创建模型的对象关系映射 2、为最终用户设计的完美管理界面 3、一流的URL设计 4、设计者友好的...

    基于Django的个人网盘源码.zip

    基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django的个人网盘源码 基于Django...

    Django中使用group_by的方法

    在Django中,`group_by` 是SQL查询中的一个关键字,用于对数据库查询结果进行分组,通常与聚合函数(如 COUNT, SUM, AVG, MAX, MIN)一起使用,以便对相同字段值的数据进行统计分析。然而,Django ORM(对象关系映射...

    Python基于Django的就业系统源码.zip

    基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于Django就业系统源码 基于...

    Django中文版 教程.

    标签“python Django”指出这份教程专注于Python语言和Django框架的教学。内容提要部分揭示了该教程内容的深度,它不仅包括了基础概念和安装步骤,也涵盖了Django的高级用法和部署知识。 知识点方面,可以从内容...

    Django框架models使用group by详解

    在Django框架中,`models`是ORM(Object-Relational Mapping)的核心部分,它允许开发者用Python类来定义数据库表的结构。`group_by`是一个SQL概念,用于将数据分组,通常与聚合函数如`SUM`, `AVG`, `COUNT`等结合使用...

    django4.0官方中文文档

    2. **模型(Models)**:Django的核心之一就是ORM(对象关系映射),它允许开发者用Python类来定义数据库表结构。在模型文件中,我们可以定义字段、属性以及字段间的关系,如外键、一对多和多对多等。 3. **视图...

    django项目实例(django 简易博客开发)

    前几天写的django 简易博客开发记录,贴个链接吧 django 简易博客开发 1 安装、创建、配置、admin使用 http://www.cnblogs.com/cacique/archive/2012/09/29/2707976.html django 简易博客开发 2 模板和数据查询 ...

    django-calendar-master_pythondjango_calendar_django_

    【标签】"pythondjango calendar django" 强调了这个项目的核心技术栈,包括 Python 语言、Django 框架以及日历功能的实现。这些标签可以帮助开发者了解项目的主要技术特征,便于查找和理解项目的目的与实现方式。 ...

    django4中文文档

    django4最新中文文档+适合python初学或者初次接触django4的开发者 从事Python编程工作的人员,一定听说过这三个框架:Django、Flask、Tornado,它们就像神一样的存在 Django是最有代表性的一种。许多成功的网站和APP...

    Django实现在线视频课堂播放网站源码.zip

    Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频课堂播放网站源码 Django实现在线视频...

    Django从零开发的个人博客网站源码.zip

    Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客网站源码 Django从零开发的个人博客...

    django框架学习笔记

    Django标签表明了内容主要围绕Django框架展开,包括但不限于以下知识点: 1. **Django安装与设置**:了解如何在本地环境配置Django,包括Python环境的搭建、Django的安装、虚拟环境的创建以及项目的初始化。 2. **...

    Django_layui后台模板

    【Django_layui后台模板】是一个专门为Django框架设计的、基于Layui前端框架的后台管理模板。Django是Python开发的一款高级Web框架,它强调代码的可读性和简洁性,而Layui则是一款轻量级的前端UI框架,提供了丰富的...

Global site tag (gtag.js) - Google Analytics