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

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

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

相关推荐
Hylan_J2 小时前
【VSCode】MicroPython环境配置
ide·vscode·python·编辑器
月光水岸New2 小时前
Ubuntu 中建的mysql数据库使用Navicat for MySQL连接不上
数据库·mysql·ubuntu
狄加山6752 小时前
数据库基础1
数据库
莫忘初心丶2 小时前
在 Ubuntu 22 上使用 Gunicorn 启动 Flask 应用程序
python·ubuntu·flask·gunicorn
我爱松子鱼2 小时前
mysql之规则优化器RBO
数据库·mysql
chengooooooo3 小时前
苍穹外卖day8 地址上传 用户下单 订单支付
java·服务器·数据库
Rverdoser4 小时前
【SQL】多表查询案例
数据库·sql
Galeoto4 小时前
how to export a table in sqlite, and import into another
数据库·sqlite
人间打气筒(Ada)4 小时前
MySQL主从架构
服务器·数据库·mysql
leegong231114 小时前
学习PostgreSQL专家认证
数据库·学习·postgresql