Python 从0开始 一步步基于Django创建项目(3)使用Admin site管理数据模型

本文内容建立在《Python 从0开始 一步步基于Django创建项目(2)创建应用程序&数据模型》的基础上。

Django提供的admin site,使得网站管理员,能够轻松管理网站的数据模型。

本文首先创建'管理员账户',即超级用户,设置其用户名、密码登信息。

然后将之前定义的数据模型,在admin site中进行注册。

最后以管理员身份登录,在其中对已经注册的数据模型进行操作。

以下逐步完成。

1、进入虚拟环境

复制代码
C:\Users\grace>cd C:\D\Python\Python310\study\snap_gram\sg_env\Scripts

C:\D\Python\Python310\study\snap_gram\sg_env\Scripts>activate

(sg_env) C:\D\Python\Python310\study\snap_gram\sg_env\Scripts>cd C:\D\Python\Python310\study\snap_gram\

(sg_env) C:\D\Python\Python310\study\snap_gram>

2、创建管理员账户

复制代码
(sg_env) C:\D\Python\Python310\study\snap_gram>python manage.py createsuperuser
Username (leave blank to use 'grace'): sg_admin
Email address:
Password:
Password (again):
The password is too similar to the username.
Bypass password validation and create user anyway? [y/N]: y
Superuser created successfully.

创建管理员的命令是:python manage.py createsuperuser

此处创建的管理员的Username和Password都是sg_admin。Email address可以为空。

3、在admin site中注册要管理的模型。

要管理的模型,就是在《Python 从0开始 一步步基于Django创建项目(2)创建应用程序&数据模型》中定义的:City、Entry。

打开C:\D\Python\Python310\study\snap_gram\city_infos路径下的admin.py文件。做如下编辑:

python 复制代码
from django.contrib import admin

# Register your models here.

#models前面的句点让Django在admin.py所在的目录中查找models.py
from .models import City,Entry

#注册被管理的数据模型
admin.site.register(City)
admin.site.register(Entry)

4、启动服务器

python 复制代码
(sg_env) C:\D\Python\Python310\study\snap_gram>python manage.py runserver 8005

5、使用管理员账号登录网站

1)在浏览器中输入地址:http://127.0.0.1:8005/admin

出现登录界面如下:

2)输入用户名和密码,此处都是sg_admin.

登录后出现如下界面:

6、点击对应条目进行编辑。

1)添加city

2)为城市添加条目信息entry

添加条目信息时,需要选定城市。

为城市'北京'添加多条条目后显示:

相关推荐
tkevinjd3 小时前
MiniCode 项目详解6:原项目控制系统的10个缺陷(已修复)
python·llm·agent
聆听。。花开雨落4 小时前
mybatis的typeHandler 作用
数据库·mybatis
dNGUZ7UGj4 小时前
10分钟完成第一个Python小游戏
python·django
pxzsky5 小时前
PG17数据库安装中分分词插件:pg_jieba
数据库·postgresql·pg_jieba
没有梦想的咸鱼185-1037-16635 小时前
AI-Python机器学习与深度学习技术:CNN/Transformer/扩散模型、SHAP可解释及Hermes智能体自动化
人工智能·python·深度学习·机器学习·chatgpt·cnn·transformer
霸道流氓气质5 小时前
SpringBoot中通用工具类库(Utils)封装与使用实践
spring boot·后端·python
她说可以呀5 小时前
Redis哨兵
数据库·redis·bootstrap
霸道流氓气质6 小时前
KMS 密钥管理服务(Key Management Service)原理与实践
linux·服务器·数据库
kirs_ur6 小时前
CXL(Compute Express Link)— 内存扩展的未来
服务器·数据库·性能优化