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调用windows api锁定计算机示例
Apr 17 Python
Python中模拟enum枚举类型的5种方法分享
Nov 22 Python
分析在Python中何种情况下需要使用断言
Apr 01 Python
python操作redis的方法
Jul 07 Python
Python列表list操作符实例分析【标准类型操作符、切片、连接字符、列表解析、重复操作等】
Jul 24 Python
Python基于TCP实现会聊天的小机器人功能示例
Apr 09 Python
python实现类之间的方法互相调用
Apr 29 Python
python买卖股票的最佳时机(基于贪心/蛮力算法)
Jul 05 Python
在python中做正态性检验示例
Dec 09 Python
Python如何获取文件指定行的内容
May 27 Python
使用python实现下载我们想听的歌曲,速度超快
Jul 09 Python
15个Pythonic的代码示例(值得收藏)
Oct 29 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在Web开发领域的优势
2006/10/09 PHP
常用表单验证类,有了这个,一般的验证就都齐了。
2006/12/06 PHP
php 异常处理实现代码
2009/03/10 PHP
php判断ip黑名单程序代码实例
2014/02/24 PHP
PHP实现的线索二叉树及二叉树遍历方法详解
2016/04/25 PHP
PHP chunk_split()函数讲解
2019/02/12 PHP
javascript之ESC(第二类混淆)
2007/05/06 Javascript
使用js 设置url参数
2013/07/08 Javascript
使用js简单实现了tree树菜单
2013/11/20 Javascript
屏蔽相应键盘按钮操作
2014/03/10 Javascript
javascritp添加url参数将参数加入到url中
2014/09/25 Javascript
js实现字符全排列算法的简单方法
2017/05/01 Javascript
在 Vue 项目中引入 tinymce 富文本编辑器的完整代码
2018/05/04 Javascript
js动态获取时间的方法分析
2019/08/02 Javascript
JavaScript实现身份证验证代码实例
2019/08/26 Javascript
简单实现节流函数和防抖函数过程解析
2019/10/08 Javascript
[03:57]DOTA2英雄梦之声_第03期_幻影刺客
2014/06/21 DOTA
Python图形绘制操作之正弦曲线实现方法分析
2017/12/25 Python
Python 私有化操作实例分析
2019/11/21 Python
python pyenv多版本管理工具的使用
2019/12/23 Python
python3.7通过thrift操作hbase的示例代码
2020/01/14 Python
TensorFlow命名空间和TensorBoard图节点实例
2020/01/23 Python
Django import export实现数据库导入导出方式
2020/04/03 Python
Python Tkinter图形工具使用方法及实例解析
2020/06/15 Python
python中random.randint和random.randrange的区别详解
2020/09/20 Python
python 动态绘制爱心的示例
2020/09/27 Python
HTML5实现动画效果的方式汇总
2016/02/29 HTML / CSS
数以千计的折扣工业产品:ESE Direct
2018/05/20 全球购物
自荐信怎么写呢?
2013/12/09 职场文书
环卫工人节活动总结
2014/08/29 职场文书
2014年科技工作总结
2014/11/26 职场文书
家属慰问信
2015/02/14 职场文书
给领导敬酒词
2015/08/12 职场文书
导游词之舟山普陀山
2019/11/06 职场文书
52条SQL语句教你性能优化
2021/05/25 MySQL
MySQL系列之六 用户与授权
2021/07/02 MySQL