目录结构

1.前言

2.自定义设置一张指定的数据表的列表展示内容

2.1.第一步:如果我们想让数据表【hello_person】里面的表字段值全部展示出来,需在应用【hello】里的【admin.py】里添加list_display 属性等代码内容,相关代码如下

2.2.第二步:重启django项目【helloworld】的服务

2.3.第三步:重新成功登陆admin管理后台

2.4.第四步:查看数据表【hello_person】的列表展示内容

3.添加搜索功能

3.1.第一步:在刚才的代码基础上添加一个search_fields属性,设置搜索的条件按表字段name进行精确搜索和模糊搜索

3.2.第二步:重启django项目【helloworld】的服务

3.3.第三步:重新成功登陆admin管理后台

3.4.第四步:查看数据表【hello_person】的列表是否多出一个搜索框并支持精确搜索和模糊搜索

1.前言

每张数据表的列表展示内容,默认只展示了数据表里的每条数据的标题信息。但如果我们要具体查看每条数据的每个表字段值就必须需要点击标题信息进入下一级的数据详情页面才能查看,这不是很直观。

在每个app应用里的【admin.py】里,我们可以自定义设置每张数据表的列表展示内容,也可以添加搜索框进行快速的精确和模糊搜索相关数据;

接下来,我们做以下完整的相关操作;

2.自定义设置一张指定的数据表的列表展示内容

细节:

①.我们拿数据表【hello_person】做实验数据;

2.1.第一步:如果我们想让数据表【hello_person】里面的表字段值全部展示出来,需在应用【hello】里的【admin.py】里添加list_display 属性等代码内容,相关代码如下

from django.contrib import admin

# Register your models here.

from hello import models

# 类名可以随意
class ControlPerson(admin.ModelAdmin):
'''自定义hello_person表在admin管理后台的数据列表展示页面里展示哪几个表字段内容,需要重写属性list_display'''
list_display = ('id',"name","age") # 重写属性list_display,来设置展示的表字段 admin.site.register(models.Person,ControlPerson)

2.2.第二步:重启django项目【helloworld】的服务

2.3.第三步:重新成功登陆admin管理后台

2.4.第四步:查看数据表【hello_person】的列表展示内容

细节:

①.父类【ModelAdmin】里的属性【list_display】的默认值是【('__str__',)】,所以数据表的列表展示内容默认只展示了数据表里的每条数据的标题信息;

②. 属性【list_display】的数据类型是list,可以包含任意个数的表字段名且表字段名的顺序可以随意;比如属性【list_display】里现在只有一个值【id】;

③.表字段名称有包含小写字母的,在admin管理后台页面对应的列表页面里都会被转为大写字母展示;

3.添加搜索功能

当数据表【hello_person】数据过多,我们为了方便快速的找到想要的数据,可以添加一个搜索功能, 可以用属性【search_fields】为该列表页增加搜索栏:

3.1.第一步:在刚才的代码基础上添加一个search_fields属性,设置搜索的条件按表字段name进行精确搜索和模糊搜索

from django.contrib import admin

# Register your models here.

from hello import models

class ControlPerson(admin.ModelAdmin):
'''自定义hello_person表在admin管理后台的数据列表展示页面里展示哪几个表字段内容,需要重写属性list_display'''
list_display = ('id',"name","age") # 重写属性list_display,来设置展示的表字段
search_fields = ("name",) # 重写属性search_fields,把表字段name的值当做搜索条件 admin.site.register(models.Person,ControlPerson)

3.2.第二步:重启django项目【helloworld】的服务

3.3.第三步:重新成功登陆admin管理后台

3.4.第四步:查看数据表【hello_person】的列表是否多出一个搜索框并支持精确搜索和模糊搜索

细节:

①.属性search_fields 值支持传多个表字段名,表示支持按这多个表字段名的任意其中一个标字段名来进行精确搜索和模糊搜索;

比如当属性search_fields 值等于【 ("name","age")】,那么表示可以按照表字段名name或者表字段名age进行精确搜索和模糊搜索;

django学习-23.admin管理后台的数据表数据的自定义展示的更多相关文章

  1. django学习-25.admin管理后台里:把表名称和表字段名称的展示值都由英文显示改为由中文显示

    目录结构 1.前言 2.完整的操作步骤 2.1.第一步:修改模型类Article 2.2.第二步:重启服务 2.3.第三步:退出登录并再次成功登陆admin管理后台 2.4.第四步:查看最新的表名称展 ...

  2. django学习-19.admin管理后台的配置和登录

    目录结构 1.前言 2.admin管理后台的配置和登录的完整操作流程 2.1.第一步: 在[settings.py]里对常量[INSTALLED_APPS]的值进行相关配置 2.2.第二步: 在[ur ...

  3. django学习-27.admin管理后台里:对列表展示页面的数据展示进行相关优化

    目录结构 1.前言 2.完整的操作步骤 2.1.第一步:查看ModelAdmin类和BaseModelAdmin类的源码 2.2.第二步:查看表animal对应的列表展示页面默认的数据展示 2.3.第 ...

  4. django学习-26.admin管理后台里:修改登录页面标题,修改登录框标题,修改首页标题

    目录结构 1.前言 2.完整的操作步骤 2.1.第一步:查看[site.py]的源码 2.2.第二步:在应用[hello]所在目录里的[admin.py]里重写三个属性的属性值 2.3.第三步:重启服 ...

  5. django学习-22.admi管理后台页面的文案展示等相关配置

    目录结果 1.前言 2.完整的操作步骤 2.1.第一步:对[settings.py]里的相关常量的值做如下修改 2.2.第二步:重启django项目[helloworld]的服务 2.3.第三步:重新 ...

  6. Admin管理后台

    Django奉行Python的内置电池哲学.它自带了一系列在Web开发中用于解决常见问题或需求的额外的.可选工具.这些工具和插件,例如django.contrib.redirects都必须在setti ...

  7. 四、Django之模型与管理后台-Part 2

    一.数据库安装 打开mysite/settings.py配置文件,这是整个Django项目的设置中心.Django默认使用SQLite数据库,因为Python源生支持SQLite数据库,所以你无须安装 ...

  8. Django框架 之 admin管理工具(组件使用)

    Django框架 之 admin管理工具(组件使用) 浏览目录 激活管理工具 使用管理工具 admin的定制 admin组件使用 Django 提供了基于 web 的管理工具. Django 自动管理 ...

  9. 第五章:Admin管理后台

    Django奉行Python的内置电池哲学.它自带了一系列在Web开发中用于解决常见问题或需求的额外的.可选工具.这些工具和插件,例如django.contrib.redirects都必须在setti ...

随机推荐

  1. java项目相对路径

    ./的含义: eclipse相对路径是相对项目的src目录来说的,而不是相对于当前文件. "./某某文件.txt" 而idea则相对于项目根目录 "./src/某某文件. ...

  2. docker版mysql的使用和配置(2)——docker版mysql的dockerfile

    既然目标是定制满足自己需要的dockerfile,那么就来看看mysql的dockerfile长什么样. dockerfile选择的是 https://github.com/mysql/mysql-d ...

  3. BigDecimal 用法详解

    BigDecimal简介 BigDecimal用法: BigDecimal的构造方法 BigDecimal常用方法描述 BigDecimal比较 BigDecimal总结 BigDecimal简介 J ...

  4. (Linux环境Kafka集群安装配置及常用命令

    Linux环境Kafka集群安装配置及常用命令 Kafka 消息队列内部实现原理 Kafka架构 一.下载Kafka安装包 二.Kafka安装包的解压 三.设置环境变量 四.配置kafka文件 4.1 ...

  5. docker(2)CentOS 7安装docker环境

    前言 前面一篇学了mac安装docker,这篇来学习在linux上安装docker 环境准备 Docker支持以下的CentOS版本,目前,CentOS 仅发行版本中的内核支持 Docker. Doc ...

  6. 2019牛客暑期多校训练营(第一场)A Equivalent Prefixes

    传送门 题意: 先输入一个n,代表两个数组里面都有n个数,然后让你从中找到一个p<=n,使其满足(1<=l<=r<=p<=n)可以让在(l,r)这个区间内在两个数组中的的 ...

  7. 2014-2015 ACM-ICPC, NEERC, Southern Subregional Contest 题解(PART)(9/13)

    $$2014-2015\ ACM-ICPC,\ NEERC,\ Southern\ Subregional\ Contest$$ A Nasta Rabbara B Colored Blankets ...

  8. windows10与linux进行ftp遇到550 Failed to change directory及553 Could not creat file

    第一个原因: 没有权限,可以使用带有l参数的ls命令来看文件或者目录的权限 ls -l 解决:给本地用户添加一个可写权限 chmod +w /home/student ##给对应的本地用户添加一个可写 ...

  9. Codeforces Round #649 (Div. 2) A. XXXXX

    题目链接:https://codeforces.com/contest/1364/problem/A 题意 找出大小为 $n$ 的数组 $a$ 的最长连续子数组,其元素和不被 $x$ 整除. 题解 如 ...

  10. 【uva 1153】Keep the Customer Satisfied(算法效率--贪心+优先队列)

    题意:有N个工作,已知每个工作需要的时间和截止时间.要求所有工作穿行完成,第一项任务开始的时间不早于时刻0.问最多能完成多少个工作.(N≤800000) 解法:贪心.可以模型化题目为:已知N个任务的长 ...