01 Django 介绍
1. 创建一个 Django 项目
方式一:django-admin startproject HelloDjango。HelloDjango 是项目名称
方式二:Pycharm 专业版新建 Django 项目
2. 运行服务
python manage.py runserver:正常运行,默认端口 8000
python manage.py runserver 8001:指定端口号为 8001
python manage.py runserver 0.0.0.0:8000:所有 IP 都可以访问,需要将根目录下的 settings.py 中设置 ALLOWED_HOSTS=["*"]。
3. 数据迁移
迁移的概念:将模型映射到数据库的过程。
生成迁移文件:python manage.py makemigrations
执行迁移:python namage.py migrate
不需要初始化迁移文件夹,因为每个应用默认有迁移文件夹 migrations
4. 创建应用
python manage.py startapp 应用名
上述新建应用命令执行完后,需要在根目录下的配置文件中(setting.py)将应用名加入到 INSTALLED_APPS 中。
5. Http 协议前后端交互图解

6. Django 框架 流程图

7. 路由与子路由
路由:在项目根目录下的 urls.py 中添加的 URL(路由)。
添加路由:
在根目录下 urls.py 中的 urlpatterns 字段中添加
# 项目录根目录下的 urls.py
# 应用为 user
from django.contrib import admin
from django.urls import path
from user.views import * # 导入 user 应用的 views 中的所有函数
urlpattherns = [
path("index/", index), # 前一个参数随意,一般与第二个参数相同;第二个参数是 user 应用的 views 中的 index 函数名
path("index2/", index2),
path("admin/", admin.site.urls),
]
所有应用都使用路由,不方便管理,也容易混淆。为了方便管理,可以使用子路由。
子路由:在应用目录下的 urls.py 中添加的 URL(路由)。
添加子路由:
先在应用的根目录下新建 urls.py 文件,在此文件中添加该应用的路由
# 应用为 user
# user/urls.py
# 添加之前需要先导入以下两个包
from django.urls import path
from user.views import *
urlpatterns = [
path("index/", index),
path("index2/", index), # 与路由的写法一致
]
然后,在目录根目录下的 urls.py 中的 urlpatterns 字段中添加应用的路由
# 根目录下的 urls.py 文件中有
from django.contrib import admin
from django.urls import path
# 需要导入 include 包
from django.urls import include
urlpatterns = [
path("user", include("user.urls")), # 第一个参数随意,一般为应用名;第二个参数为 include("应用名.该应用下的 urls ")
path("admin/", admin.site.urls),
]
子路由,也就是二级路由,需要定位两次。第一次定位到应用,第二次定位到该应用
views中的某个函数。
8. 基本模板
模板实际上就是用 HTML 写好的页面
创建模板文件夹 templates,在模板文件夹中创建模板文件
在 views 中去加载渲染模板,使用 render 函数:return render(request, "index.html")
9. 定义模型
在 models.py 中导入 models:from django.db import models (在文件已经存在)
创建自己的模型类,切记要继承自 models.Model
案例:使用模型定义班级,并在模板上显示班级列表
# 班级 table:grade
# columns:
班级名称:name
成立时间:date
女生个数:girlnum
男生个数:boynum
是否删除:is_delete
模型 对应 表结构
类属性 表字段
对象 表的一行记录
注意:
数据迁移:models 表结构一旦改变就需要重新迁移
迁移概念:就是将模型映射到数据库的过程,分两步完成
Step 1:生成迁移文件,python manage.py makemigrations
Step 2:执行迁移,python manage.py migrate
10. Admin 后台管理系统
在 admin.py 中将 model 加入后台管理:admin.site.register(Grade)
创建超级用户:python manage.poy createsuperuser
根路由 urls.py 中添加:path('admin/', admin.site.urls)(默认已经存在)
访问 admin 后台:http://127.0.0.1:8000/admin/