django admin后管定制-显示字段的实例


Posted in Python onMarch 11, 2020

先说需求:

1、django 自带了admin后管,如果我们需要使用,只需把我们定义的models注册即可;

2、但如果只是简单注册,那显示的很简单,根本看不到每行记录的描述信息,全部以model object 形式显示,必须点击进去才能看到信息,太不方便,如下图:

django admin后管定制-显示字段的实例

1、显示关键信息

效果如下图,这样就好看多啦。

django admin后管定制-显示字段的实例

2、配置

在 admin.py 文件中配置一下就行。

admin.py

# Underwriter admin model
class UnderwriterAdmin(admin.ModelAdmin):
  # 需要显示的字段信息
  list_display = ('id', 'underwriter', 'shortname', 'telephone')

  # 设置哪些字段可以点击进入编辑界面,默认是第一个字段
  list_display_links = ('id', 'underwriter')

# 注册时,在第二个参数写上 admin model
admin.site.register(Underwriter, UnderwriterAdmin)

3、答疑

为何开始没设置时,显示的是 model object 形式呢 ??

原来是在定义 model 时,漏掉了一个步骤:

# 承销商 model
class Underwriter(models.Model):
  underwriter = models.CharField(max_length=50)
  shortname = models.CharField(max_length=50)
  telephone = models.CharField(max_length=50)
  email = models.CharField(max_length=50, null=True, blank=True)

  # 应该加上这步,表示显示时返回的是自定义信息,而不是 object 形式
  def __unicode__(self):       # __str__ on Python 3
    return self.underwriter

补充知识:django 自定义用户表和使用admin来管理数据库

django 自定义用户表

在使用django操作数据库时,django中生成默认的User表,其中的字段已经可以满足我们的日常需求。但有时候,我们自己需要更多的字段,我们就可以自定义用户表。来替换django自带的User表。

from django.db import models
from django.contrib.auth.models import AbstractUser

class User(AbstractUser):
  phone = models.CharField(max_length=11, null=True, blank=True)
  nickname = models.CharField(max_length=50, null=True, blank=True)
  img = models.ImageField(upload_to="upload/", default="static/upload/a.jpg", max_length=100)
  # upload_to 图像上传地址
  class Meta:
    db_table = "user"
   verbose_name = '用户'
    verbose_name_plural = verbose_name

注意,User类需要继承AbstractUser;

在settings.py 中添加:

AUTH_USER_MODEL = 'app名.类名'

在命令行中输入命令,生成用户表。

db_table = “user” 自定义表名为user

Django 使用admin来管理数据库中的内容

Django提供了自带的admin功能,可以很方便的管理网站。首先要运行python manage.py createsuperuser 命令来创建一个管理员账户。

django admin后管定制-显示字段的实例

注意需要输入用户名,邮箱,密码等信息。

在admin.py中注册模型:

from django.contrib import admin
#引入要注册的模型
from music.models import Music
from music.models import Banner
from user.models import User
# Register your models here.注册
admin.site.register(Music)
admin.site.register(Banner)
admin.site.register(User)

用浏览器访问http://127.0.0.1:8000/admin/,输入注册的管理员账户和密码。

django admin后管定制-显示字段的实例

可以对数据库表进行简单的增删改查。

设置模型 models 的中文名,在models.py 类中添加:

class Meta:
 # 设置模型的名字,但是记得复数形式也要设置,否则有些地方就变成 verbose_name + s 了
 verbose_name = '用户'
  verbose_name_plural = verbose_name

刷新admin界面

django admin后管定制-显示字段的实例

以上这篇django admin后管定制-显示字段的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python抓取豆瓣图片并自动保存示例学习
Jan 10 Python
用Python写飞机大战游戏之pygame入门(4):获取鼠标的位置及运动
Nov 05 Python
Python 实现 贪吃蛇大作战 代码分享
Sep 07 Python
Python设置matplotlib.plot的坐标轴刻度间隔以及刻度范围
Jun 25 Python
python实现邮件自动发送
Aug 10 Python
Python socket模块方法实现详解
Nov 05 Python
tensorflow 实现自定义梯度反向传播代码
Feb 10 Python
Python 爬取必应壁纸的实例讲解
Feb 24 Python
解决matplotlib.pyplot在Jupyter notebook中不显示图像问题
Apr 22 Python
详解python logging日志传输
Jul 01 Python
编译 pycaffe时报错:fatal error: numpy/arrayobject.h没有那个文件或目录
Nov 29 Python
教你用python实现12306余票查询
Jun 30 Python
Python 3.8 新功能来一波(大部分人都不知道)
Mar 11 #Python
屏蔽Django admin界面添加按钮的操作
Mar 11 #Python
在Mac中PyCharm配置python Anaconda环境过程图解
Mar 11 #Python
python实现飞机大战项目
Mar 11 #Python
Django 自定义权限管理系统详解(通过中间件认证)
Mar 11 #Python
Django User 模块之 AbstractUser 扩展详解
Mar 11 #Python
pygame实现飞机大战
Mar 11 #Python
You might like
php面向对象的方法重载两种版本比较
2008/09/08 PHP
php中jpgraph类库的使用介绍
2013/08/08 PHP
基于ThinkPHP删除目录及目录文件函数
2020/10/28 PHP
innerHTML 和 getElementsByName 在IE下面的bug 的解决
2010/04/09 Javascript
JavaScript 对象模型 执行模型
2010/10/15 Javascript
js阻止默认事件与js阻止事件冒泡示例分享 js阻止冒泡事件
2014/01/27 Javascript
javascript常见数字进制转换实例分析
2016/04/21 Javascript
关于在Servelet中如何获取当前时间的操作方法
2016/06/28 Javascript
Bootstrap Modal对话框如何在关闭时触发事件
2016/12/02 Javascript
100多个基础常用JS函数和语法集合大全
2017/02/16 Javascript
微信小程序版翻牌小游戏
2018/01/26 Javascript
原生JS实现的双色球功能示例
2018/02/02 Javascript
jQuery插件实现的日历功能示例【附源码下载】
2018/09/07 jQuery
vue使用vuex实现首页导航切换不同路由的方法
2019/05/08 Javascript
使用Node.js写一个代码生成器的方法步骤
2019/05/10 Javascript
微信小程序实现文件、图片上传功能
2020/08/18 Javascript
详解小程序如何改变onLoad的执行时机
2019/11/01 Javascript
vue 返回上一页,页面样式错乱的解决
2019/11/14 Javascript
TypeScript的安装、使用、自动编译的实现
2020/04/10 Javascript
vue实现点击出现操作弹出框的示例
2020/11/05 Javascript
python检查序列seq是否含有aset中项的方法
2015/06/30 Python
详解python开发环境搭建
2016/12/16 Python
解决python 未发现数据源名称并且未指定默认驱动程序的问题
2018/12/07 Python
浅谈python下含中文字符串正则表达式的编码问题
2018/12/07 Python
在pyqt5中QLineEdit里面的内容回车发送的实例
2019/06/21 Python
Python 基于FIR实现Hilbert滤波器求信号包络详解
2020/02/26 Python
Python使用grequests并发发送请求的示例
2020/11/05 Python
计算机本科生自荐信
2013/10/15 职场文书
学期研究性学习个人的自我评价
2014/01/09 职场文书
十佳大学生事迹材料
2014/01/29 职场文书
酒店总经理助理职责
2014/02/12 职场文书
单位授权委托书范文
2014/08/02 职场文书
2014年售票员工作总结
2014/11/19 职场文书
酒店办公室主任岗位职责
2015/04/01 职场文书
2015年项目工作总结
2015/04/29 职场文书
使用pandas或numpy处理数据中的空值(np.isnan()/pd.isnull())
2021/05/14 Python