在django的开发中,很多时候我们希望app在admin中显示成我们想要的中文名,而不是显示默认的app_label名称。...在导入app时,django会检查每个在INSTALLED_APPS中的app的default_app_config变量,如果没有设置,django会使用基类AppConfig,因此我们只需要在init.py...所在的路径填写 通过以上两步,即可实现自定义app在admin中的显示名称。...经过以上步骤的操作,在自带的admin 和 xadmin 中都能显示出来 ? 自带的admin中的显示效果 ?...xadmin中的显示效果 内容方法来源:https://www.jianshu.com/p/69e6f9c97b48
Django内置的User对象,已经包含了一些主要的属性,如username、password、email等,但实际情况可能还需要昵称、头像等其他属性,仅仅使用内置的User属性是不够的。...通过使用AbstractUser可以对User进行扩展使用,添加用户自定义的属性。 User模型源码如下。...所以我们继承AbstractUser可以获得User的所有特性。...model中使用 继承AbstractUser from django.contrib.auth.models import AbstractUser class MyUser(AbstractUser...): pass 全局settings.py中设置 覆盖默认的user model AUTH_USER_MODEL = 'app.MyUser' 在admin.py中注册MyUser from django.contrib
1、问题背景当我们使用 Django 进行 Web 开发时,经常需要在 Web 页面上显示数据库中的数据。例如,我们可能需要在一个页面上显示所有用户的信息,或者在一个页面上显示所有文章的标题和作者。...那么,如何使用 Django 来显示表中的数据呢?2、解决方案为了使用 Django 显示表中的数据,我们需要完成以下几个步骤:在 models.py 文件中定义数据模型。...数据模型是 Django 用于表示数据库中数据的类。...例如,如果我们想显示所有用户的信息,那么我们可以在 models.py 文件中定义如下数据模型:from django.db import modelsclass User(models.Model):...例如,如果我们想在一个页面上显示所有用户的信息,那么我们可以在 templates 目录下创建如下 HTML 模板文件:{% extends 'base.html' %}{% block content
注意:为了让 Django 能够识别使用自定义的用户模型,必须要在 settings.py 中设置自定义模块位置,如在 settings.py 上添加 AUTH_USER_MODEL = ‘blog.user...内置用户类AbstractUser 我们在之前讲过了model模型的作用和父类的作用,这次介绍的内置用户类AbstractUser就是Django内置的一个关于用户操作的类,它极大地方便了我们对model...模型中对User用户类的设计。...而所谓内置用户类的本质也就是一个封装好的父类,所以使用起来是相当的方便。...这是配合自带的用户类AbstractUser一起使用的 通常使用在类视图中的post方法校验用户登录等操作 在view中的具体代码如下 class LoginView(View): def get
1.修改配置文件,覆盖默认的User模型 Django允许你通过修改setting.py文件中的 AUTH_USER_MODEL 设置覆盖默认的User模型,其值引用一个自定义的模型。...AUTH_USER_MODEL = 'myapp.MyUser' 上面的值表示Django应用的名称(必须位于INSTALLLED_APPS中)和你想使用的User模型的名称。...警告 : 1.确保 AUTH_USER_MODEL 引用的模型在所属app中第一个迁移文件中被创建 由于Django的可交换模型的动态依赖特性的局限,你必须确保 AUTH_USER_MODEL 引用的模型在所属...5.自定义用户与内置身份验证表单 Django内置的forms和views和相关联的user model有一些先决条件。...然而,你也需要覆写一些django.contrib.auth.models.AbstractUser 字段的定义不在你自定义用户模型中的。
先说需求: 1、django 自带了admin后管,如果我们需要使用,只需把我们定义的models注册即可; 2、但如果只是简单注册,那显示的很简单,根本看不到每行记录的描述信息,全部以model object...自定义用户表和使用admin来管理数据库 django 自定义用户表 在使用django操作数据库时,django中生成默认的User表,其中的字段已经可以满足我们的日常需求。...db_table = “user” 自定义表名为user Django 使用admin来管理数据库中的内容 Django提供了自带的admin功能,可以很方便的管理网站。...在admin.py中注册模型: from django.contrib import admin #引入要注册的模型 from music.models import Music from music.models...以上这篇django admin后管定制-显示字段的实例就是小编分享给大家的全部内容了,希望能给大家一个参考。
大家好,又见面了,我是你们的朋友全栈君。 前言 Django为我们提供了内置的User模型,不需要我们再额外定义用户模型,建立用户体系了。...User模型源码分析 class User(AbstractUser): """ Django 身份验证系统中的用户由该模型表示 需要用户名和密码。...User模型基本用法 创建用户 创建用户需要用到objects = UserManager()中的方法,我们点击UserManager查看源码 class UserManager(BaseUserManager...Django内置的User模型虽然已经足够强大了。...对象,在创建user的时候使用phone和password,而不是使用username和password objects = UserManager() 然后再在settings中配置好AUTH_USER_MODEL
. 5.2 注册过滤器 通过django.template.Library 它的实例的 filter 方法 filter 有两个参数: name 过滤器的名称,是个字符串,默认使用方法名作为过滤器的名称...用户注册 官方文档 django的强大之处在于开发效率高,内置了权限模块之类的很多常用功能。django内置权限系统有大的自定义功能扩展,不需要重复造轮子。...在settings.py中设置AUTH_USER_MODEL指向user的app的User模型 # 自定义用户模型 # 这里的user是app,User是模型 不是固定的 AUTH_USER_MODEL...通过上面改写UserManager的create_superuser创建超级用户可以不提供email字段 6.2 AbstractUser AbstractUser这是django特定的抽象用户 导入方式...: from django.contrib.auth.models import AbstractUser 创建用户的model,继承了AbstractUser class User(AbstractUser
自定义新权限 除了增删改查权限,有时我们需要更多的权限,例如,为myapp中的BlogPost创建一个can_publish权限: 方法1 meta中配置 class BlogPost(models.Model...扩展User模型 代理模型 如果不需要修改表结构,只扩展行为,那么可以使用代理模型。...替换User模型 新版Django的推荐做法是,如果不想用默认User模型,那么就把它替换掉。...Django除了User模型,还有2个抽象模型AbstractUser和AbstractBaseUser,从源码中可以看到它们的继承关系: class User(AbstractUser):...MyUser(AbstractUser): pass 第二步,settings.py中配置AUTH_USER_MODEL,指定新的用户模型: AUTH_USER_MODEL = 'myapp.MyUser
,用户可能还包含有昵称、头像、个性签名等等其它属性,因此仅仅使用 Django 内置的 User 模型是不够。...使用 Profile 模式拓展用户模型 如果想为一个已使用了 Django 内置 User 模型的项目拓展用户模型,上述继承 AbstractUser 的拓展方式会变得有点麻烦。...Django 没有提供一套自动化的方式将内置的 User 迁移到自定义的用户模型,因为 Django 已经为内置的 User 模型生成了相关数据库迁移文件和数据库表。...所以我们采用另一种不改动数据库表的方式来拓展用户模型,具体来说,我们在创建一个模型(通常命名为 Profile)来记录用户相关的数据,然后使用一对一的方式将这个 Profile 模型和 User 关联起来...PS:如果你使用了Profile 模式,你可能希望在创建 User 对象的时候同时也创建与之关联的 Profile 对象。你可以使用 Django 的 Signal 实现这个需求。
一、Auth模块是什么 django内置的用户认证系统 ,可以快速 的实现,登录,注销,修改密码......也就是在auth_user这个表中插入了一条数据(密码 是加密的,所以我不能手动插入) 2、验证用户: from django.contrib import auth user=auth.authenticate...找 user=models.OneToOneField(to=User) 方法二: 2、定义一个表模型,继承(AbstractUser) from django.contrib.auth.models...---一样用,完全一样 -不一样的地方: 如果之前用到User这个表模型的地方,都换成UserInfo 三、博客项目 ? ?...1 需求分析 首页(显示文章) 文章详情 点赞,点踩 文章评论 字评论 评论的展示 登录功能(图片验证码) 注册功能(基于form
在开发中有需求在详情显示里外键字段内容,并且添加按钮弹窗内容,以及按钮跳转内容。...首先先讲解下思路,admin中有几个界面,一个是展示的list界面,一个是详情的model界面,model中其实就是详情detail,里面记录了此条数据的全部内容,精简来说就是一个form表单的内容展示...补充知识:Django admin 列表每行后面添加审核按钮 我就废话不多说了,还是直接看代码吧!...在admin类中的把 pass_audit_str 加入到list_display元组中 list_display = (‘id’, ‘create_time’, ‘pass_audit_str’,)...刷新页面即可; 以上这篇在django admin详情表单显示中添加自定义控件的实现就是小编分享给大家的全部内容了,希望能给大家一个参考。
它内置了强大的用户认证系统--auth,它默认使用 auth_user 表来存储用户数据,使用auth模块来进行用户认证,那么需要使用人家django自带的auth_user表来存储用户的信息数据。 ...这个字段如果不使用admin的话,可以自行忽略,不影响使用 is_active:是否是可用的。对于一些想要删除账号的数据,我们设置这个值为False就可以了,而不是真正的从数据库中删除。...关于User表的扩展阅读内容(目前作为了解) Django内置的User模型虽然已经足够强大了。但是有时候还是不能满足我们的需求。...这种方式会比较麻烦,最好是确定自己对Django比较了解才推荐使用。步骤如下: 创建模型。...我们可以通过继承内置的 AbstractUser 类,来定义一个自己的Model类。django给我们自动创建的一张user表,而如果要用auth模块,就必须要使用(或继承)这张表。
User Model,用于记录用户的用户名,密码,邮箱,姓,名等个人信息,这些信息可能无法满足实际需求,这种情况下,需要拓展用户模型,如果项目还没有使用 Django 内置 User 模型,可以采用继承...AbstractUser 的拓展方式进行拓展(如果已经使用了Django的内置模型,Django会为其生成相关数据库迁移文件和数据库表,采用继承方式拓展会比较麻烦。)...用户认证系统使用我们自定义的用户模型,必须在项目settings.py 里通过 AUTH_USER_MODEL 指定自定义用户模型,如下带背景色部分的内容 ...略 TEMPLATE_DIRS = (...,意为使用appName应用下的自定义CustomeUserModel用户模型,本例为使用mysite应用的User模型 执行数据库迁移 进入到项目根目录,执行以下命令 python manage.py...makemigrations mysite python manage.py migrate 成功后,Django便会使用我们自定义的用户模型作为默认的用户模型了 注意:一定要在配置好 AUTH_USER_MODEL
用户应用 创建应用 使用python manage.py startapp创建一个users应用 (venv) (base) zhongxin:backend zhongxin$ python manage.py...中添加刚创建的应用 不过因为我们换了创建应用的路径,所以需要将新的路径添加到环境变量中,不然项目无法识别到 import sys from datetime import timedelta from...INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes...models.py文件为: from django.contrib.auth.models import AbstractUser 简单看一下AbstractUser和它的父类 它里面包含了很多登录的常用字段了...verbose_name_plural = 'users' # 复数显示 指定本项目用户模型类 在backend/LightSeeking/settings.py中指定AUTH_USER_MODEL
它内置了强大的用户认证系统--auth,它默认使用 auth_user 表来存储用户数据。...扩展默认的auth_user表 这内置的认证系统这么好用,但是auth_user表字段都是固定的那几个,我在项目中没法拿来直接使用啊! 比如,我想要加一个存储用户手机号的字段,怎么办?...我们可以通过继承内置的 AbstractUser 类,来定义一个自己的Model类。 这样既能根据项目需求灵活的设计用户表,又能使用Django强大的认证系统了。...auth_user表之后,一定要在settings.py中告诉Django,我现在使用我新定义的UserInfo表来做用户认证。...写法如下: # 引用Django自带的User表,继承使用时需要设置 AUTH_USER_MODEL = "app01.UserInfo" 再次注意: 一旦我们指定了新的认证系统所使用的表,我们就需要重新在数据库中创建该表
以下对这个User对象做一个简单了解: 字段: 内置的User模型拥有以下的字段: username: 用户名。150个字符以内。可以包含数字和英文字符,以及_、@、+、.和-字符。...用代码创建超级用户跟创建普通用户非常的类似,只不过是使用create_superuser。...if user is not None: # 执行验证通过后的代码 else: # 执行验证没有通过的代码。 扩展用户模型: Django内置的User模型虽然已经足够强大了。...这种方式会比较麻烦,最好是确定自己对Django比较了解才推荐使用。步骤如下: 创建模型。...如何使用这个自定义的模型:比如以后我们有一个Article模型,需要通过外键引用这个User模型,那么可以通过以下两种方式引用。 第一种就是直接将User导入到当前文件中。
目录 BBS项目(二) ORM 创建相关表 表模型 修改admin样式 Simple-UI 注册表添加数据 注册forms类编写 注册功能前端搭建 头像实时显示功能实现 BBS项目(二) 可以在本地写或虚拟环境...'''models.py''' from django.contrib.auth.models import AbstractUser from django.db import models #...'''扩写auth_user表需要使用AbstractUser''' # 用户表 class UserInfo(AbstractUser): phone = models.CharField...) admin.site.register(models.Tag) 应用名改成中文在后台显示 '''apps.py''' from django.apps import AppConfig class...App01Config(AppConfig): name = 'blog' verbose_name = '博客管理' # 如果想改表名为中文在后台显示,只需在类中添加Meta
Django自定义用户模型 Django带有一个admin功能,这意味着Django默认是有用户管理类的。这点也可以从Django默认生成的表中看到。...然后实现我们自定义的用户模型。...例如: from django.db import models from django.contrib.auth.models import AbstractUser # 导入AbstractUser...注释掉项目的setting.py文件中INSTALLED_APPS列表中的'django.contrib.admin' 2....同时需要注释掉项目的urls.py中的urlpatterns列表中的path('admin/', admin.site.urls) 3. 执行migrate,发现不会报错了。 4.
使用django自带的 AbstractUser 扩展之后,更改AUTH_USER_MODEL = ‘users.UserProfile’属性后,进行数据库迁移时, 出现如下报错: ValueError...取消注释,则报unique错误,app必须唯一 后经过仔细查询,找到解决办法,并尝试解决成功: 找到自己的/python3X/lib/site-packages/django/contrib/admin.../migrations文件夹,把里面除了__init__.py的所有文件,全部删了再makemigrations就可以了 补充知识:自定义userprofile覆盖默认user表 一、创建users...app startapp users 二、创建userprofile模型 from django.db import models from django.contrib.auth.models...用户信息" verbose_name_plural = verbose_name def __str__(self): return self.username 三、在setting.py中更改用户模型
领取专属 10元无门槛券
手把手带您无忧上云