本篇是记录的是《Django企业开发实战》书中的学员管理系统,个人对该案例的实现、理解以及自己认为比较重要的知识点,该笔记包括:后台开发、前端开发、项目进阶以及重点知识点
centos7+Python3.6.4+Django3.2.16
学员管理系统基本功能包括:前台页面:展示学员信息+提交学员信息;后台页面:处理学员信息
虚拟环境作用
起到解耦作用,让本项目与其他项目隔离开,起到互不影响的效果,同时方便后续打包项目
虚拟环境工具
Python自带venv
python -m venv project-env 创建虚拟环境
cd project-env 进入虚拟环境目录
source bin/activate 激活虚拟环境
deactivate 退出虚拟环境

virtualenv
pip install virtualenv 安装virtualenv
mkvirtualven project-env -p ‘which python3.6’ 创建虚拟环境,-p指定Python版本为3.6
workon 查看虚拟环境列表
woekon project-env 进入名为project-env的虚拟环境
deactivate 退出虚拟环境

提示
这里选择一种虚拟环境即可,没有特殊要求
安装Django
进入虚拟环境安装Django
pip install Django
创建项目
选择项目位置开始创建项目
django-admin startproject student_sys

创建应用
进入student_sys文件夹
cd student_sys
通过manage来创建应用
python manage.py startapp student
修改配置
进入sitting.py文件,将student应用加到INSTALLED_APPS列表中,同时修改中文和对应时间


model模块代码编写
在student应用里找到models.py文件,该文件是用来与数据库打交道的文件

数据库迁移
python manage.py makemigrations 创建数据库迁移文件
Python manage.py migration 创建表
Python manage.py createsuperuser 创建后台登录名和登录账户,根据提示数据用户名、邮箱、密码即可
admin模块代码编写

在manage.py所在的页面运行Python manage.py runserver 文件
打开浏览器输入127.0.0.1:8000/admin 即可进入后台页面
注意点:在运行python manage.py XXX 的时候可能会出现Sqlite版本低的情况,百度跟着教程换个版本即可

view.py部分
前端发来请求,会经过view.py进行处理数据,然后返回HTML页面文件,在这里我们先读取数据库中的数据
views.py文件导入model.py文件,然后通过model.objects.all()来读取所有数据
render(request,‘html’,context)方法是用来渲染页面的,第二个参数是Html文件,context是一个字典,向html文件中传入的参数
from django.shortcuts import render
from .models import Student
def index(request):
students = Student.objects.all()
return rander(request,'index.html',context = {"students":students})
templates.py部分
Django在渲染模板或者静态页面时,会向每个APP下寻找templates文件夹,然后找到你render中对应的html文件名,进行渲染;寻找顺序是从上到下;
所以这里我们在views.py所在的位置创建templates文件夹,然后在里面创建index.html文件

url部分
views和html文件准备好后,就需要打通访问路径了,这里先在students_sys中URL文件中指定访问函数
from django.contrib import admin
from django.urls import path
from student.views import index
urlpatterns = [
path('admin/', admin.site.urls),
path('',index,name='index')
]
页面展示
运行项目,访问127.0.0.1:8000即可获取数据库中的数据了

提交数据涉及到form表单了,Django给了djang.forms类来设计表单
forms.py文件
views.py同目录下创建forms.py文件

views.py文件

这里使用View类的话,URL部分也需要修改

这里一共三个知识点:View类、middleware中间件、单元测试
]
views.py文件
[外链图片转存中…(img-hgiFz2F7-1667993562207)]
这里使用View类的话,URL部分也需要修改
[外链图片转存中…(img-Nv9okvW2-1667993562208)]
这里一共三个知识点:View类、middleware中间件、单元测试