首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

按Django admin中的字段值对列表项进行分组

在Django admin中,可以通过使用list_display属性来自定义显示的字段列表。如果想要按照某个字段的值对列表项进行分组,可以使用list_display属性的函数形式。

具体步骤如下:

  1. 在admin.py文件中找到对应的ModelAdmin类。
  2. 在该类中定义一个函数,用于获取要分组的字段的值。
  3. list_display属性中添加这个函数。
  4. 在函数中,可以通过obj参数获取当前行的对象,然后返回要分组的字段的值。
  5. Django会根据这个字段的值对列表项进行分组显示。

下面是一个示例:

代码语言:txt
复制
from django.contrib import admin
from .models import YourModel

class YourModelAdmin(admin.ModelAdmin):
    list_display = ('your_field', 'group_by_field')

    def group_by_field(self, obj):
        return obj.your_field  # 返回要分组的字段的值

admin.site.register(YourModel, YourModelAdmin)

在上面的示例中,YourModel是你的模型类,your_field是要显示的字段,group_by_field是用于分组的字段。你可以根据实际情况修改这些名称。

这样,Django admin会根据group_by_field函数返回的字段值对列表项进行分组显示。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Django ORM 查询表字段方法

下面看下Django ORM 查询表字段,详情如下: 场景: 有一个表某一,你需要获取到这一所有,你怎么操作?...QuerySet,内容是键值构成,键为表列名,为对应每个。...但是我们想要是这一呀,这怎么是一个QuerySet,而且还包含了列名,或者是被包含在了元祖?...查看高阶用法,告诉你怎么获取一个list,如: [‘测试feed’, ‘今天’, ‘第三个日程测试’, ‘第四个日程测试’, ‘第五个测试日程’] 到此这篇关于Django ORM 查询表字段文章就介绍到这了...,更多相关django orm 字段内容请搜索ZaLou.Cn以前文章或继续浏览下面的相关文章希望大家以后多多支持ZaLou.Cn!

11.8K10
  • Django Admin后台管理

    runserver,在浏览器输入http://127.0.0.1:8000/admin/ 输入之前创建超级管理员账号密码后,进行登陆。...(StudentInfo) 显示效果如下 list_display项可以是模型字段,也可以是模型方法(该方法必须有返回) 修改应用下models.pySchoolInfo类 # 学校模型类...list_display添加get_name方法 list_display = ['id', 'name', 'addr', 'get_name'] 显示效果如下 注:属性在后台管理页面是可以进行排序...右侧过滤器,会将对应字段列出来,用于快速过滤,通过list_filters属性设置。上方搜索框,用于指定字段进行搜索,支持模糊查询,通过search_fields属性进行设置。...5.其他 富文本编辑器 后台管理员如果需要在后台编辑带样式文字,如编辑商品详细信息描述,就需要使用富文本编辑器。这里以tinymce为例在Django Admin后台中如何使用富文本编辑器。

    2.8K10

    Django 做个小后台,细节在完善一点点【附源码】

    Django 后台完善 列表页展示内容修改 在上一篇博客实现了列表数据展示,但是只显示了一,并且标题为英文,本篇博客首先解决该问题。...= ["title","content","creatr_time"] list_display 属性对应表项,都是 models.py 代码内容,要对应好,否则会出现下述类似错误: NameError...March 25, 2021 - 12:04:53 列表自定义实现 除了 models.py 定义属性,可以在 list_display 进行调用,还可以自行创建供其使用。...修改 admin.py 文件代码: @admin.register(Blog) class BlogAdmin(admin.ModelAdmin): # list_display 用于设置列表页展示哪些字段...属性扩展; get_readonly_fields(): readonly_fields 属性扩展; get_search_fields(): search_fields 属性扩展; 上述属性和方法都会在后续博客中进行学习

    41430

    Django3.2边学边记—Adimn站点管理

    控制显示Django 会尝试按照这个顺序解释 list_display 每个元素: 一个模型字段。 一个可调用对象。 一个代表 ModelAdmin 属性字符串。...def atitle(self):        return self.title 以上方法显示是不能排序,如果让这个方法显示也能排序,就给atitle方法.admin_order_field...atitle.short_description='标题'   如果是更改模型字段显示标题,可以在定义模型字段时,设置verbose_name ,或者封装成方法,再对方法使用上面那个属性,模型字段不能直接使用那个属性...应是一个元素列表或元组,会将对应字段列出来,一般用于快速过滤有重复字段 12 class TestAdmin(admin.ModelAdmin):    list_filter = ['is_delete...我理解就是分组整体匹配(Django3.2新增),例如,如果用户搜索 "john winston" 或 'john winston',Django 会做相当于这个 SQL  WHERE 子句: 1

    1.2K00

    Django3.2边学边记—Adimn站点管理

    控制显示Django 会尝试按照这个顺序解释 list_display 每个元素: 一个模型字段。 一个可调用对象。 一个代表 ModelAdmin 属性字符串。...def atitle(self):        return self.title 以上方法显示是不能排序,如果让这个方法显示也能排序,就给atitle方法.admin_order_field...atitle.short_description='标题'   如果是更改模型字段显示标题,可以在定义模型字段时,设置verbose_name ,或者封装成方法,再对方法使用上面那个属性,模型字段不能直接使用那个属性...是不能直接接收外键字段),会将对应字段列出来,一般用于快速过滤有重复字段。...我理解就是分组整体匹配(Django3.2新增),例如,如果用户搜索 "john winston" 或 'john winston',Django 会做相当于这个 SQL  WHERE 子句: 1

    1.3K30

    Admin站点

    在列表页中点击"增加"可以进入增加页,Django会根据模型类不同,生成不同表单控件,提示填写表单内容后点击"保存",完成数据创建,创建成功后返回列表页。 ?...定义与使用Admin管理类 Django提供Admin站点展示效果可以通过自定义ModelAdmin类来进行控制。...点击头可以进行升序或降序排列。 d. 将方法作为 可以是模型字段,还可以是模型方法,要求方法有返回。...右侧栏过滤器 属性如下,只能接收字段,会将对应字段列出来,用于快速过滤。一般用于有重复字段。...list_filter = ['hbook', 'hgender'] 2)在浏览器刷新效果如下图: ? g. 搜索框 属性如下,用于指定字段进行搜索,支持模糊查询。

    2.1K20

    Django】 开发:数据库操作和后台管理

    ,‘’) 作用: 与 all () 方法不同,它会用 SQL 语句 ORDER BY 子句查询结果进行根据某个字段选择性进行排序 说明: 默认是按照升序排序,降序排序则需要在前增加’-' 表示...__gt=65) auths.delete() 聚合查询 聚合查询是指一个数据表一个字段数据进行部分或全部进行统计查询,查bookstore_book数据表全部书平均价格,查询所有书总个数等...作用: 通常是对数据库字段在不获取情况下进行操作 用于类属性 (字段) 之间比较。...F F('列名') 说明: 一个 F () 对象代表了一个 model 字段 F 对象通常是对数据库字段在不加载到内存情况下直接在数据库服务器端进行操作 示例 1 更新 Book...方法进行注册,如: from django.contrib import admin admin.site.register(自定义模型类) 如:在 bookstore/admin.py 添加如下代码

    4.1K40

    django orm(2)

    聚合函数 这里聚合函数和SQL里聚合函数对应,在使用前需要先进行模块导入: from django.db.models import Max,Min,Sum,Count,Avg 常用聚合函数有求最大...分组,models就是谁,annotaten内部传入筛选条件。...银行转账就是利用了事务这一特点。 Django事务 还未进行详细讲解 orm字段及参数 常用字段字段 描述 AutoField int自增列,必须填入参数 primary_key=True。...(Field) - 字符串类型,Django Admin以及ModelForm中提供UUID格式验证 FilePathField(Field) - 字符串,...MySQL字段对应关系 自定义char字段 自定义字段可以使用下面的方法,其实我们也只是更改一下字段数据长度、字段名字等,Django字段已经很丰富了。

    1.2K21

    python Django 管理站点1.3

    为此,Django会根据定义模型类完全自动地生成管理模块 使用django管理 创建一个管理员用户 python manage.py createsuperuser,提示输入用户名、邮箱、密码 启动服务器...BookInfo数据进行增删改查操作 问题:如果在str方法返回中文,在修改和添加时会报ascii错误 解决:在str()方法,将字符串末尾添加“.encode('utf-8')” 自定义管理页面...Django提供了admin.ModelAdmin类 通过定义ModelAdmin子类,来定义模型在Admin界面的显示方式 class QuestionAdmin(admin.ModelAdmin...): ... admin.site.register(Question, QuestionAdmin) 列表页属性 list_display:显示字段,可以点击进行排序 list_display...(admin.TabularInline) 布尔显示 发布性别的显示不是一个直观结果,可以使用方法进行封装 def gender(self): if self.hgender:

    49520

    Django基础篇-admin系统

    管理站点 创建一个管理员用户 python manage.py createsuperuser 提示输入用户名、邮箱、密码; 启动服务器,通过“127.0.0.1:8000/admin”访问,输入上面创建用户名...、密码完成登录; 进入管理站点,默认可以对groups、users进行管理。...刷新管理页面,可以对数据表数据进行增删改查操作 自定义管理页面 Django 提供了 admin.ModelAdmin 类 通过定义 ModelAdmin 子类,来定义模型在 Admin 界面的显示方式...①列表页属性 list_display:显示字段,可以点击进行排序 list_filter:过滤字段,过滤框会出现在右侧 search_fields:搜索字段,搜索框会出现在上侧 list_per_page...:分页,分页框会出现在下侧 ②添加、修改页属性 fields:属性先后顺序 fieldsets:属性分组 注意:上面两个属性,二者选一。

    58220

    django入门:数据模型

    ModelB 特定,同样 ModelB 也只能对应 ModelA 特定 Model 常用设置参数 null=(True/False) 数据库字段是否可以为空 blank=...(True/False) django Admin 添加数据时是否可允许空 primary_key=(True/False) 主键, AutoField 设置主键后,...max_length=(int) 最大长度,多和字符串类型配合使用 verbose_name='xxxx' Admin 字段显示名称 name|db_column...目录生成一个 0001_initial.py(0001会根据迁移次数进行递增),用于记录模型修改 python manage.py migrate 运行后将 model 操作转换成为数据库语言...' c.save() 删除数据库数据 存在数据库数据进行删除,可以通过如下操作进行 # 删除某条特定数据 c = Category.objects.get(name='new test category

    83210

    Django ORM

    目录 Django ORM ORM实操之数据库迁移 ORM实操之字段修改 ORM实操之数据增删改查 数据库同步 ORM创建表关系 Django请求生命周期流程图 路由匹配 无名分组 有名分组 反向解析...无名分组和有名分组反向解析 Django ORM ORM:对象映射关系程序 通过orm将编程语言对象模型和数据库关系模型建立映射关系,这样我们在使用编程语言对数据库进行操作时候可以直接使用编程语言对象模型进行操作就可以了...: 一多、多多、一一,没关系暂且排外,下面演示如何通过ORM来创建外键确立表关系~ ORM创建外键字段位置: 一多:创建在多一方 一堆一:创建在任何一方都可以,但是推荐创建在查询频率较高...,只有多多关系表被单独创建出来 Django请求生命周期流程图 路由匹配 路由:通俗理解为除去ip和port之后地址 在新版本Django2.x,url路由表示用path和re_path代替...,当作了视图函数第二个位置参数''' 有名分组 在使用路由时候,正则表达式可以起别名,别名当作关键字参数传给视图函数; 没有关键字参数写报错 别名,传参 '''urls.py

    4.1K10

    Django---ORM操作大全

    一:在某表创建一行数据时,有一个单选下拉框(下拉框内容被用过一次就消失了 例如:原有含10数据一张表保存相关信息,经过一段时间之后,10无法满足需求,需要为原来表再添加5数据 1、...进行计算,返回一个聚合字典。...此时Django为我们提供了F和Q查询: 1、F 可以获取对象字段属性(),并进行操作; from django.db.models import F,Q #F 可以获取对象字段属性...(),并且进行操作; models.Book.objects.all().update(price=F('price')+1) #图书馆里每一本书价格 上调1块钱 2、Q多条件组合查询...import F,Q 1、F 可以获取对象字段属性(),并且进行操作; # models.Book.objects.all().update(price=F('price'

    6.9K100

    Django教程 —— 站点后台管理

    3、注册模型类 登录后台管理后,默认没有我们创建应用定义模型类,需要在自己应用 admin.py 文件中注册,才可以在后台管理中看到,并进行增删改查操作。...Django后台管理对数据库表操作 上篇讲到在项目的 shell 终端对数据库表操作,现在我们来看看Django后台对数据库表操作 查询 点击"Book Infos"可以进入列表页,默认只有一。...在列表页中点击某行第一可以进入修改页。 删除 按照提示进行内容修改,修改成功后进入列表页。在修改页点击“删除”可以删除一项。...', 'pub_date'] 注意:list_display 列表元素必须是模型类属性、也可以说成模型类对应数据库表字段。...列表页变成中文,是因为在 BookInfo 模型类属性给了 verbose_name 参数,如果没有给定则显示类属性名。

    2.1K10

    Django教程 —— 站点后台管理

    3、注册模型类 登录后台管理后,默认没有我们创建应用定义模型类,需要在自己应用 admin.py 文件中注册,才可以在后台管理中看到,并进行增删改查操作。...Django后台管理对数据库表操作 上篇讲到在项目的 shell 终端对数据库表操作,现在我们来看看Django后台对数据库表操作 查询 点击 Book Infos 可以进入列表页,默认只有一...在列表页中点击某行第一可以进入修改页。 删除 按照提示进行内容修改,修改成功后进入列表页。在修改页点击 删除 可以删除一项。 多添加几本图书在列表页勾选想要删除复选框,可以删除多项。...', 'pub_date'] 注意:list_display 列表元素必须是模型类属性、也可以说成模型类对应数据库表字段。...列表页变成中文,是因为在 BookInfo 模型类属性给了 verbose_name 参数,如果没有给定则显示类属性名。

    1.6K20

    Python进阶29-ORM介绍

    添加表记录 基于对象连表查询 一一查询 一多查询 多多查询 连续跨表 打印Django查询数据SQL语句 基于双下划线查询 聚合查询 分组查询 F查询...当我们需要对数据库进行操作时,势必需要通过连接数据、调用sql语句、执行sql语句等操作,ORM将数据库表,字段,行与我们面向对象编程类及其方法,属性等一一应,即将该部分操作封装起来,程序猿不需懂得...annotate()为调用QuerySet每一个对象都生成一个独立统计(统计方法用聚合函数)。 总结 :跨表分组查询本质就是将关联表join成一张表,再按单表思路进行分组查询。 ...如果我们要对两个字段做比较,那该怎么做呢? Django 提供 F() 来做这样比较。F() 实例可以在查询引用字段,来比较同一个 model 实例两个不同字段。...Admin是否允许用户输入为空 editable Admin是否可以编辑 help_text Admin字段提示信息 choices

    4.5K10

    DjangoAutoField字段使用

    Django是一个机智框架】 默认情况下Djang会为ORM定义每一张表加上一个自增ID,并且用这个来做主键;出于一个MySQL-DBA工作经历我觉得 Djanog还真是机智;这样么说主要是因为我遇到过许多主从延时问题...补充知识:Djangomodels下常用Field以及字段参数 一、常见FieldType数据库字段类型 1、AutoField:自增Field域,自动增加一个数据库字段类型,例如id字段就可以使用该数据类型...Admin以及ModelForm中提供验证IPV4和IPV6机制 二、常用关系型数据表处理Field 1、处理一多关系数据表:使用ForeignKey 2、处理多多关系数据表:使用ManyToManyField...:删除关联数据: a、与之关联设置为指定,设置:models.SET() b、与之关联设置为可执行对象返回,设置:models.SET(可执行对象) 5、db_constraint:是否在数据库创建外键约束...给两做索引 3、unique_together:联合唯一索引,两不能重复 4、ordering:指定默认什么字段顺序,只有设置了该属性,我们查询到结果才可以被reverse() 具体介绍可以查看

    6.5K20

    Django管理应用程序高级配置在BookInstance模型运用【Django

    Django管理应用程序 Django管理应用程序可以使用模型自动构建可用于创建、查看、更新和删除记录站点区域。这可以在开发过程节省大量时间,使测试模型和查看是否有正确数据变得容易。...python3 manage.py runserver 高级配置 Django使用注册模型信息创建基本管理站点: 每个模型都有一个单独记录列表,由__ str__()方法创建并链接到详细视图/表单以进行编辑字符串...用于编辑和添加记录模型详细记录表单包含模型所有字段,这些字段其声明顺序垂直排列。 可以进一步自定义界面,使其更易于使用。...向列表视图中操作菜单添加其他选项,并选择此菜单在表单上显示位置。 详细信息视图 选择要显示(或排除)字段、它们顺序、分组、可编辑、要使用小部件、方向等。...默认情况下,这些字段是垂直显示,但如果进一步将它们分组为元组(如上面的日期字段所示),则它们将水平显示。

    1.7K20
    领券