目录
一、实现步骤
(一)创建Django项目 - books
- 创建Django项目,设置项目位置与项目名
(二)创建并注册应用 - index
1、创建index应用
- 在项目配置文件里,导入os模块
- 在控制台执行
python manage.py startapp index
- 启动项目,访问
http://127.0.0.1:8000
2、注册index应用
- 在配置文件的INSTALLED_APPS列表里添加index应用
(三)创建数据库 - books
- 在Navicat里创建MySQL数据库 - books
(四)配置MySQL数据库连接信息
- 在settings.py文件里配置MySQL数据库连接信息
(五)设置MySQL数据库连接模块
- 在books的
__init__.py
文件里设置数据库连接模块
- 因为在迁移的过程中会出现兼容的问题,所以在这里指定了版本
(六)实现数据迁移生成表
- 依次执行下述两条命令
- python manage.py makemigrations
- python manage.py migrate
查看生成的数据表
(七)创建模型
1、创建图书模型 - Book
- 在index的models.py文件里定义Book模型类
2、创建用户模型 - User
(八)数据迁移,生成图书表与用户表
- 依次执行下面两条命令
- 查看生成的图书表与用户表
(九)给图书表与用户表添加记录
1、给图书表添加记录
- 执行SQL查询,插入表记录
- 查看图书表
2、给用户表添加记录
- 执行SQL查询,添加表记录
- 查看用户表
(十)创建模板页面
1、创建登录页面 - login.html
- 在templates文件夹里创建login.html
2、创建图书显示页面 - books.html
- 在templates文件夹里创建books.html
(十一)设置路由
1、创建子路由
- 在index目录里创建子路由urls.py,在里面创建子路由集合urlpatterns
三个视图函数都需要在index的views.py里创建,目前还没有创建,所以会报错,待会儿创建视图函数后,导入一下就可解决这个问题。
2、设置主路由
- 在主路由集合里添加一个路由:
path('', include(('index.urls', 'index'), namespace='index'))
(十二)创建视图函数
1、创建跳转到登录页面的视图函数 - loginView
- 在index的views.py里创建loginView视图函数
2、创建显示图书的视图函数 - booksView
- 在index的views.py里创建booksView视图函数
3、创建处理登录请求的视图函数 - doLoginView
- 在index的views.py里创建doLoginView视图函数
4、解决子路由中视图函数的导入问题
- 导入index.views里的三个视图函数
(十三)启动项目,测试效果
访问http://127.0.0.1:8000/login
,显示登录页面
- 输入错误的用户名或密码
- 单击【确定】按钮,弹出消息框提示用户
- 单击【确定按钮】,重新回到登录页面,输入正确的用户名和密码
实现图书记录删除功能
- 表格添加一列【操作】- 每条记录最后添加一个删除按钮
- 单击某条记录后的【删除】按钮时,删除该行的记录
- 在index的views.py里创建del_delete视图函数
- 在index的子路由urls.py中将视图函数里创的视图引用进来
- 将templates中的books.html中添加一个类似于超链接
- 删除id=1的记录
实现图书记录编辑功能
- 表格添加一列【操作】- 每条记录最后有一个编辑按钮
- 单击某条记录时,编辑该条记录的信息
- 在index的views.py里创建dit_books视图函数
- 在此之前因该创建一个名为dit.html编辑信息的页面
- 在index的子路由urls.py中将视图函数里创视图引用进来
实现图书记录查询功能
- 表格添加一列【操作】- 每条记录最后有一个查询按钮
- 单击查询时查询到对应数据库里面的全部数据
- 首先在在index的views.py里创建book_list视图函数
- 在index的子路由urls.py中将视图函数里创视图引用进来
- 在templates文件夹里创建books_list.html页面
实现图书记录增加功能
- 表格添加一列【操作】- 每条记录最后有一个增加按钮
- 单击增加按钮时向对应得数据库中添加记录
- 在index的views.py里创建add视图函数
- 在books的主路由urls.py中将视图函数里创视图引用进来
- 在templates文件夹里创建add.html页面