目录结构

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. 常用shell命令及其用法

    ls(lsit) ​ 1.作用:列出文件列表 ​ 2.用法:ls [-a|-A--] [filename|directory] ​ ls ​ ls -a:查看隐藏文件 ​ ls -l:查看文件详细信息 ...

  2. 区域之间PA、FortiGate内网互联专线、IPSec互备方案

    网络拓扑: 现状描述: 办公区和IDC之间有防火墙互联的点对点专线实现内网互通,现需要两地防火墙构建IPSec VPN作为专线的热备链路. 解决方案: 飞塔侧 1.按照阶段一.阶段二建立IPSec V ...

  3. 天天写同步,5种SpringMvc异步请求了解下!

    引言 说到异步大家肯定首先会先想到同步.我们先来看看什么是同步? 所谓同步,就是发出一个功能调用时,在没有得到结果之前,该调用就不返回或继续执行后续操作. 简单来说,同步就是必须一件一件事做,等前一件 ...

  4. Java排序算法(三)直接插入排序

    一.测试类SortTest import java.util.Arrays; public class SortTest { private static final int L = 20; publ ...

  5. 深入Jar包:Gradle构建可执行jar包与访问jar包中文件夹与文件

    前言 Java的跨平台功能听起来很诱人可口,号称"Write Once,Run Everywhere",实际上是"Run Once,Debug Everywh" ...

  6. git从安装到多账户操作一套搞定(一)入门使用

    作者:良知犹存 转载授权以及围观:欢迎添加微信:Allen-Iverson-me-LYN 总述     GIT是当今热门代码管理技术,但是如此火的系统,竟然是大神林纳斯花了两周用C写出来的一个分布式版 ...

  7. 用werkzeug实现一个简单的python web框架

    使用工具 Pycharm , Navicat , WebStorm等 使用库 Werkzeug用于实现框架的底层支撑,pymysql用于实现ORM,jinja2用于模板支持,json用于返回json数 ...

  8. WebApi Swagger 接口多版本控制 适用于APP接口管理

    最近研究了下swagger多版本的维护,网上的文章千篇一律,无法满足我的需求,分享下我的使用场景以及实现 演示环境:Visual Studio 2019.Asp.NET WebAPI.NET Fram ...

  9. [USACO12FEB]Symmetry

    传送门: https://www.luogu.com.cn/problem/P3046 https://ac.nowcoder.com/acm/contest/6306/G 题意 给定n个不同的点,求 ...

  10. GPLT L2-024 部落 (并查集)

    N ≤ 104,输入如下数据如果没有路径压缩可能会超时. 10000 2 1 2 2 3 4 2 5 6 -- 2 9997 9998 2 9999 10000 2 9999 9997 -- 2 5 ...