• Django admin 站点管理


    目录

    站点管理

    一、管理界面本地化

    二、创建管理员

    三、注册模型类

    四、发布内容到数据库

    五、在登录时遇到的问题


    站点管理

    • 站点: 分为内容发布公共访问两部分
    • 内容发布的部分由网站的管理员负责查看、添加、修改、删除数据
    • Django能够根据定义的模型类自动地生成管理模块
    • 使用Django的管理模块, 需要按照如下步骤操作 :
      • 1.管理界面本地化
      • 2.创建管理员
      • 3.注册模型类
      • 4.发布内容到数据库

    一、管理界面本地化

    • 本地化是将显示的语言、时间等使用本地的习惯,这里的本地化就是进行汉化.
    • 中国大陆地区使用简体中文, 时区使用亚洲/上海时区, 注意这里不使用北京时区.

    修改步骤:

    打开【settings.py】,向下滑动,最下面有

    LANGUAGE_CODE = 'en-us'    ————> 设置语言

    TIME_ZONE = 'UTC'                 ————> 设置时区

    修改后:

    LANGUAGE_CODE = 'en-us'    ————>   LANGUAGE_CODE = 'zh-Hans' 

    TIME_ZONE = 'UTC'                 ————> TIME_ZONE = 'Asia/Shanghai'   

    二、创建管理员

    在终端输入创建管理员的命令 :

    python manage.py createsuperuser

    按提示输入用户名、邮箱、密码。 

    重置密码命令:

    python manager.py changepassword 用户名

    启动服务器,可以在PyCharm中运行代码,也可以在终端上输入启动命令:

    python manage.py runserver

    进入浏览器后,进入站点的网址是:

    http://127.0.0.1:8000/admin

    进入网址后,就来到了站点的登录界面

    输入我们刚注册的用户名和密码就能进入管理后台。 
    这是还没有注册模型时的样子

    三、注册模型类

    应用admin.py文件中注册模型类

    • 需要导入模型模块 :from book.models import BookInfo,PeopleInfo

    1. from django.contrib import admin
    2. from book.models import BookInfo, PeopleInfo
    3. # Register your models here.
    4. # 注册书籍模型
    5. admin.site.register(BookInfo)
    6. # 注册人物模型
    7. admin.site.register(PeopleInfo)

    重新进入站点管理后:

     

     注册模型成功后, 就可以在站点管理界面方便快速的管理数据。
     

    四、发布内容到数据库

    点击进入我们注册好的模型中,我们可以看到我们之前设置好的数据


    我们可以在这里对数据进行增加和删除
    点击右上角的【增加图书】,就能进入添加页面
    填写好数据后,点击保存即可添加到数据库中。



     

     删除勾选要进行删除的数据,点击动作,选择【删除所选的图书】点击执行,即可

     选择页面是否确定删除

     

    删除后

     

    五、在登录时遇到的问题

    首先,第一个问题就是在运行代码时出现了错误

    RuntimeError: 'cryptography' package is required for sha256_password or caching_sha2_password auth methods

    是因为缺少cryptography包,可以使用 pip install cryptography 安装cryptography包,安装完成后,代码就能正常于运行。

    然后,在管理界面本地化时,将LANGUAGE_CODE = 'en-us'    修改成   LANGUAGE_CODE = 'zh-Hans' ,后,运行代码报错(Django的版本为3.0)

     我们设置的'zh-Hans'值不在LANGUAGES设置中的值。

    ERRORS:
    ?: (translation.E004) You have provided a value for the LANGUAGE_CODE setting that is not in the LANGUAGES setting.

    解决的方法是:

    在【setting.py】导入以下代码,然后再修改,代码就能成功运行

    1. from django.utils.translation import gettext_lazy as _
    2. LANGUAGES = [
    3. ('zh-Hans', _('Simplified Chinese')),
    4. ]

  • 相关阅读:
    微信小程序通过npm引入tdesign包进行构建的时候报错
    LabVIEW编程LabVIEW开发SMP10辐射表例程与相关资料
    【redis的基本数据类型】
    王阳明学习笔记
    贪心算法求解 图的m着色问题
    树状数组:leetcode307 区域和检索
    【Flink读写外部系统】Flink异步访问外部系统_mysql
    MogaFX—什么银行兑换外币?
    关于需求规范和需求评审的一点看法
    MySQL数据库 面试题 补充
  • 原文地址:https://blog.csdn.net/m0_61491995/article/details/126067239