目录结构

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小技巧

    String 转 Date String classCode = RequestHandler.getString(request, "classCode"); SimpleDat ...

  2. js中的逻辑运算符详解(||、&&、!)

    视频地址:https://www.bilibili.com/video/BV1Y7411K7zz?p=1 一直以来都没弄清楚js中的逻辑运算符是怎么回事 , 一直都以为他们的用法和java一样 , 今 ...

  3. NodeMCU使用ArduinoJson判断指定键值对存在与否

    NodeMCU使用ArduinoJson判断指定键值对存在与否 从ArduinoJson库中可以得知,判断键值对是否存在可以使用containskey()函数,但是查看ArduinoJson-cont ...

  4. Flink-v1.12官方网站翻译-P006-Intro to the DataStream API

    DataStream API介绍 本次培训的重点是广泛地介绍DataStream API,使你能够开始编写流媒体应用程序. 哪些数据可以流化? Flink的DataStream APIs for Ja ...

  5. Codeforces Global Round 11 A. Avoiding Zero(前缀和)

    题目链接:https://codeforces.com/contest/1427/problem/A 题意 将 \(n\) 个数重新排列使得不存在为 \(0\) 的前缀和. 题解 计算正.负前缀和,如 ...

  6. 吉哥系列故事——完美队形II(马拉车算法)

    吉哥又想出了一个新的完美队形游戏! 假设有n个人按顺序站在他的面前,他们的身高分别是h[1], h[2] ... h[n],吉哥希望从中挑出一些人,让这些人形成一个新的队形,新的队形若满足以下三点要求 ...

  7. Failed to start LSB 网络服务启动失败

    有些时候 VMare虚拟机挂起,重新运行后,XShell远程连接不上,检查VMare虚拟机,重启网卡会报错,查看日志,会有 Failed to start LSB .... CentOS7 会有一个网 ...

  8. windows cmd 查看远程连接端口

    查看远程端口号 Cmd tasklist  /svc 在输出的内容中查找svchost.exe进程下termservice服务对应的PID,在此查看的PID为:276 然后输入命令:netstat   ...

  9. 牛客网多校第5场 F take 【思维+数学期望】

    题目:戳这里 思路来源:视频讲解 题意:有n个箱子按1...n标号,每个箱子有大小为di的钻石概率为pi,我们初始有个大小为0的钻石,从1到n按顺序打开箱子,遇到比手中大的箱子就换,求交换次数的数学期 ...

  10. JavaScript预编译过程理解

    1-JavaScript运行三部曲 语法分析 预编译 解释执行 语法分析很简单,就是引擎检查你的代码有没有什么低级的语法错误: 解释执行顾名思义便是执行代码了: 预编译简单理解就是在内存中开辟一些空间 ...