Django自定义用户表+自定义admin后台中的字段实例


Posted in Python onNovember 18, 2019

1.自定义用户表 注意事项

必须在settings中配置AUTH_USER_MODEL这个字段

# 覆盖默认的用户模型,使用自定义用户模型
  # 语 法:'app的名称.自定义用户模型的名称'
  AUTH_USER_MODEL = 'admi.UserModel'

2.在models文件中编写UserModel类

from django.db import models
from django.contrib.auth.models import AbstractUser
# Django框架将createsuperuser创建的用户以及在amdin后台添加的用户,默认都保存在了auth_user这个表中,但是这个表的字段是固定的,如果想给用户扩展一些字段(年龄、性别、住址等),就需要重写User表了,不能再使用auth_user这个表了。

class UserModel(AbstractUser):
    # AbstractUser这个类,也就是Django框架默认使用的一个用于管理用户的User类,这个类生成一个auth_user表。所以,要扩展用户属性,可以继承AbstractUser,在子类UserModel中实现扩展。  
    nick_name=models.CharField(max_length=25,verbose_name='昵称')
    user_address=models.CharField(max_length=35,verbose_name='住址')

    class Meta:
     # 配置自定义用户表名是user_table
      db_table='user_table'
      verbose_name='用户'
      verbose_name_plural=verbose_name

添加完成后,在当前app的admin文件中注册

# 只要使用admin后台系统,所有的Model必须在这里进行注册
admin.site.register(UserModel)

3.测试

编写完上述步骤后,makemigrations、migrate同步数据库

Django自定义用户表+自定义admin后台中的字段实例

然后打开用户的数据库管理工具,可以看到user_table这个表已经生成了,而且表中生成了我们创建的两个字段

nick_name和user_address

Django自定义用户表+自定义admin后台中的字段实例

4.进入admin后台测试

先使用createsuper创建一个superuser用户

Django自定义用户表+自定义admin后台中的字段实例

通过admin登录到后台

Django自定义用户表+自定义admin后台中的字段实例

后台自动生成了一个字段代表用户名,我们把UserModel中Meat下verbose_name=‘用户' 修改成用户名,然后刷新admin页面,admin中的字段也会随之改变。

(这样也不需要更新数据库,是不是很方便呢?)

Django自定义用户表+自定义admin后台中的字段实例

5.后台字段扩展

a.更改用户名显示的内容(只显示admin是不是很单调?)

在UserModel中使用__str__魔法方法

Django自定义用户表+自定义admin后台中的字段实例

具体效果

Django自定义用户表+自定义admin后台中的字段实例

b.让后台信息显示多个字段

# 修改app下的admin.py文件
  from django.contrib import admin
  from .models import *
  class UserAdmin(admin.ModelAdmin):
    # 设置显示数据库中哪些字段
    list_display = ['username','password','nick_name','user_address']
    
  admin.site.register(UserModel,UserAdmin)

效果

Django自定义用户表+自定义admin后台中的字段实例

以上这篇Django自定义用户表+自定义admin后台中的字段实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
在Python操作时间和日期之asctime()方法的使用
May 22 Python
在Python的Django框架中更新数据库数据的方法
Jul 17 Python
Python实现文件信息进行合并实例代码
Jan 17 Python
python爬虫_实现校园网自动重连脚本的教程
Apr 22 Python
解决sublime+python3无法输出中文的问题
Dec 12 Python
Python函数中不定长参数的写法
Feb 13 Python
详解python实现交叉验证法与留出法
Jul 11 Python
利用Python小工具实现3秒钟将视频转换为音频
Oct 29 Python
Pytorch 之修改Tensor部分值方式
Dec 27 Python
基于python实现文件加密功能
Jan 06 Python
python单例设计模式实现解析
Jan 07 Python
python如何把字符串类型list转换成list
Feb 18 Python
Django 实现Admin自动填充当前用户的示例代码
Nov 18 #Python
Django 创建后台,配置sqlite3教程
Nov 18 #Python
Python3实现配置文件差异对比脚本
Nov 18 #Python
Python(PyS60)实现简单语音整点报时
Nov 18 #Python
wxPython实现整点报时
Nov 18 #Python
python字符串的拼接方法总结
Nov 18 #Python
python将字符串转变成dict格式的实现
Nov 18 #Python
You might like
php获取网卡的MAC地址支持WIN/LINUX系统
2014/04/30 PHP
php树型类实例
2014/12/05 PHP
关于laravel5.5的定时任务详解(demo)
2019/10/23 PHP
jQuery Ajax之$.get()方法和$.post()方法
2009/10/12 Javascript
textarea中的手动换行处理的jquery代码
2011/02/26 Javascript
js中字符替换函数String.replace()使用技巧
2011/08/14 Javascript
javascript自动给文本url地址增加链接的方法分享
2014/01/20 Javascript
jQuery实现购物车计算价格功能的方法
2015/03/25 Javascript
Javascript中this绑定的3种方法与比较
2016/10/13 Javascript
JQuery页面随滚动条动态加载效果的简单实现(推荐)
2017/02/08 Javascript
在 Angular 中实现搜索关键字高亮示例
2017/03/21 Javascript
VUE简单的定时器实时刷新的实现方法
2019/01/20 Javascript
如何自动化部署项目?折腾服务器之旅~
2019/04/16 Javascript
vue ssr服务端渲染(小白解惑)
2019/11/10 Javascript
微信小程序换肤功能实现代码(思路详解)
2020/08/25 Javascript
详解JavaScript中的数据类型,以及检测数据类型的方法
2020/09/17 Javascript
[04:46]2018年度玩家喜爱的电竞媒体-完美盛典
2018/12/16 DOTA
python fabric实现远程操作和部署示例
2014/03/25 Python
Python3中常用的处理时间和实现定时任务的方法的介绍
2015/04/07 Python
Python使用chardet判断字符编码
2015/05/09 Python
Python socket编程实例详解
2015/05/27 Python
Saltstack快速入门简单汇总
2016/03/01 Python
Python使用re模块实现信息筛选的方法
2018/04/29 Python
对python打乱数据集中X,y标签对的方法详解
2018/12/14 Python
使用GitHub和Python实现持续部署的方法
2019/05/09 Python
Python学习笔记之函数的定义和作用域实例详解
2019/08/13 Python
python 爬取古诗文存入mysql数据库的方法
2020/01/08 Python
Python中join()函数多种操作代码实例
2020/01/13 Python
Python 实现Image和Ndarray互相转换
2020/02/19 Python
英国最红的高街时尚品牌:Topshop
2016/08/05 全球购物
高性能装备提升营地:Kammok
2019/02/27 全球购物
物流管理专业毕业生求职信
2014/03/23 职场文书
财产公证书格式
2014/04/10 职场文书
个人查摆剖析材料
2014/10/04 职场文书
个人房屋买卖协议书(范本)
2014/10/04 职场文书
社区好人好事材料
2014/12/26 职场文书