0
点赞
收藏
分享

微信扫一扫

Django——admin站点

知年_7740 2022-03-30 阅读 35
pythondjango

Django的后台管理站点

Django是一个非常强大的Web框架,自带一个管理站点admin,一般用于管理者自己内部使用,由于页面并没有进行
设计,一般不会将该站点提交给用户,只用于项目未上线之前的管理站点。

启用Admin站点

  • Admin站点的URL默认是127.0.0.1:8000/admin;
  • 初次访问admin站点时,需要执行数据库迁移并创建超级用户;

如果没有进行数据库迁移会出现下面这个页面
qwb5jA.png

数据库迁移

python manage.py makemigrations            # admin应用是自动创建的,所以默认就是指admin
python manage.py migrate                   # 数据更新到数据库中

创建超级用户

方法一

使用django指令来创建

python manage.py createsuperuser    # 创建超级管理员

qwOah8.png

方法二

使用默认的用户模型User创建

from django.contrib.auth.models import User

user = User.objects.create(username='admin')    # 创建一个叫admin的超级管理员
user.set_password('123456')
user.is_superuser = True                        # 站点最高权限
# user.is_staff = True                          # 站点访问权限
user.save()
  • 两种方法都是在交互环境下执行;
  • 设置管理员密码是不会显示的,两次必须输入一致;
  • django会将密码的哈希值保存在数据表中,不会直接保存明文;
  • 修改密码时,需要调用set.password()方法。

访问Admin站点

  • 输入URL127.0.0.1:8000/admin
    qwj7Y6.png
  • 使用刚才创建的用户进行登录后
    qwxjII.png

在这个页面下可以管理用户、管理用户组以及管理模型(django默认不提供)。

自定义admin站点

  • django的管理页面默认时英文的,如果使用中文,则需要修改本地中间件;

在setting.py文件中的MIDDLEWARE参数中注册本地中间件

MIDDLEWARE = [
    ...
    'django.middleware.locale.LocaleMiddleware',         # 中文中间件(本地化中间件)
]

q09YYn.png

  • 自定义admin的URL

admin也是一个应用,只需要在根urls.py文件中进行指定url就可以了

from django.contrib import admin
from django.urls import path

urlpatterns = [
    path('root/', admin.site.urls),
]

q09qpt.png

举报

相关推荐

0 条评论