(一)创建Django项目 - books

  • 设置Django项目的位置与名称

(二)、创建app应用

1.在终端中执行:python manage.py startapp apps

2.向setting模块中,注册app

(三)、创建数据库,并进行配置

1.打开Navicat Premium,创建数据库

2.在主路由setting中,配置数据库

(四)、编写apps的models模块

1、执行数据迁移

  • 在控制台依次执行两条数据迁移命令,生成数据表 

  • 查看数据库,总迁移了11张表

(五)、配置books下的urls

1.在apps下创建urls模块,并配置路由链接视图函数

2.apps.views视图模块中编写视图函数

to_add_publisher:作用是项目在页面上运行,链接到add_publisher页面

add_publisher:根据method提交的方法获取表单中的内容,把获取到的数据保存到数据库中,并进行查询,跳转渲染到publisher_list页面

publisher_list:显示渲染的数据

(六)、创建静态页面

在templates文件下,创建add_publisher,publisher_list两个静态页面

编写两个静态页面的结构

{% for publisher in publishers %}:遍历在add_publisher视图中从页面添加到数据库中的数据,并渲染到publisher_list页面

运行项目:

点击提交,跳转到publisher_list页面

查看数据库是否添加进数据

(七)编写页面结构

1.创建base.html页面,整个项目的主页面

2.利用bootstrap样式编写结构

  • 在浏览器中打开网址:www.bootcss.com

  • 点击Bootstrap4中文文档,进入页面,点击下载

  • 在项目目录下创建文件夹static,把文件解压到文件夹里

  • 在主页面base中引用bootstrap样式

运行项目,控制台报错,原因是引用文件找不到

解决方法:在books下的setting.py下,添加以下代码

3.创建导航栏页面:nav.html

(1).编写导航栏页面,在bootstrap4的组件模块中的导航栏部分复制代码:

(2).在nav.html中修改成自己想要的样式

(3).在主页面base.html中引用nav.html

4.在base中添加标题栏和主功能模块

(1)在add_publisher下,添加代码,利用{% extends "base.html" %}继承母模板

(2)、跟以上步骤一样,修改publisher_list静态页面

点击"新增按钮"返回add_publisher页面

(八)、修改出版社

1.在apps.urls添加路由

2.写两个视图函数

3.静态页面edit_publisher页面

4.在publisher_list页面的修改和删除两个a标签里添加跳转的页面

5.添加删除视图路由和函数

在这里就又出现了一个问题:当修改过后返回publisher_list页面,在点击修改或者删除一条记录后再修改,会在修改路由前面加上上一步操作的路由

解决方法:

在publisher_list静态文件的a标签的to_edit/前面再加上一个/

(九)、添加,修改,删除图书列表

(一)、图书列表models

  • 生成迁移文件

  • 迁移数据库

查看数据表

1.编写图书列表的models 

2.配置图书列表的路由

3.编写book_list视图函数

4. 创建三个图书静态页面:book_list图书列表,add_book添加图书,edit_book修改页面

5.编写静态页面的结构,也出版社列表页面一样

book_list:

运行页面:

6.添加图书

(1) 、配置路由

(2)、编写添加图书的视图函数

(3)、add_book.html静态页面结构

运行界面:

点击提交按钮,返回图书列表

7、修改图书列表

(1)添加修改的路由                        

  • 修改图书配置两个路由,to_book获取id再跳转到edit_book

运行界面:

8、删除图书

(1)、添加删除图书路由

(2)、编写删除视图函数

运行界面:

(十)、在nav.html导航栏修改链接,可以点击跳转到图书列表和出版社列表

django实训项目——图书管理系统相关推荐

  1. 【综合实训】图书管理系统——需求规格说明书

    [备注]本说明书由华中农业大学2018级计算机科学与技术专业的刘铠铭.崔凌浩.卢家伟三位同学共同完成. 文章目录 1 引言 1.1 编写目的 1.2 背景 1.3 术语和缩略词 1.4 参考资料 2 ...

  2. Django实训:图书信息管理系统

    文章目录 一.功能实现 二.实现步骤 (一)创建Django项目 - books (二)创建并注册应用 - index 1. 创建index应用 2. 注册index应用 (三)创建数据库 - boo ...

  3. python实训项目-黑马程序员上海校区Python21期Django项目实训

    黑马程序员上海中心 月薪一万只是起点 关注 晚上十点,一名名Python学生正在酣畅淋漓地撸代码,手指不间断地敲击着键盘,发出机械而清脆的声音. 各个小组在经过为期4天的django项目小组开发,终于 ...

  4. Github 精选开源项目-图书管理系统

    Github 精选开源项目-图书管理系统 项目是一款图书管理系统[Book-manager],适用于大学生实训的图书管理系统,这是一个非常精简化的图书管理系统,可拓展性高,集成主流框架. 首先放出Gi ...

  5. Django实训-学生管理系统

    文章目录 项目总述 1,功能分析 增加学生记录,查询学生记录,修改学生记录,删除学生记录 2,需求分析 可以查询个人学生信息,包括根据学号查询学习基本情况和选课信息 可以更省时间的查询信息 一.创建D ...

  6. Java实训项目--小型书店管理系统(ssm框架)

    系列文章目录 MyBatis专栏: 一:Java实训项目–小型图书管理系统(ssm框架) 二:"spring与mybatis整合"考试题目测试与解析 三:"SSM框架整合 ...

  7. 2020年Java实训项目【GUI学生信息管理系统】目录

    Java实训项目1:GUI学生信息管理系统 - 实训概述 Java实训项目2:GUI学生信息管理系统 - 系统概述 Java实训项目3:GUI学生信息管理系统 - 涉及知识点 Java实训项目4:GU ...

  8. Java实训项目1:GUI学生信息管理系统 - 实训概述

    文章目录 一.实训概述 1.实训目的 2.实训项目简介 3.项目开发思维导图 4.实训日志模板 5.实训报告模板 6.实训考核标准 一.实训概述 1.实训目的 让学生综合运用J2SE有关知识开发[学生 ...

  9. Java实训项目:GUI学生信息管理系统(2019)【下】

    Java实训项目:GUI学生信息管理系统(2019)[下] 本篇目录 六.实现步骤 13.应用程序类 14.窗口界面类(JFrame)

最新文章

  1. 733.图像渲染(主讲题意)
  2. 理解JavaScript中的事件
  3. OFFICE OUTLOOK 2007 如何设置开机自动启动
  4. (pytorch-深度学习系列)简单实现kaggle房价预测-学习笔记
  5. 个人对stacking的思想理解
  6. javascript中使用 闭包重载函数,记录日志功能
  7. SpringBoot + MyBatis 之 Hello World
  8. 局域网IP扫描工具-OpUtils
  9. 微服务框架自带uuid生成器
  10. 2014最新开源微信源码 支持二次开发,微信对接公众平台多用户程序 全面体验
  11. 微软:2022 年开始,Win10 PC 设备才能免费升级 Win11
  12. 乐观锁实现之CAS算法分析
  13. wampServer虚拟主机配置
  14. python 列表 元组_python基础:元组(tuple)列表(list)介绍
  15. mosaic数据增强
  16. Chrome浏览器 设置跨域访问
  17. 最全小说资源网——连载阅读升级版(亲测好用)
  18. python word保存图_使用python matplotlib 画图导入到word中如何保证分辨率
  19. 支付宝H5支付(手机网站支付)
  20. python 收音机

热门文章

  1. 遥感数字图像处理(复习)
  2. 【模板】 Splay树
  3. Android 翻转动画 Rotate3dAnimation 效果
  4. Shell脚本实现将文本内容格式化为markdown表格文本
  5. c语言中bool的使用
  6. iPad可以用来学计算机二级吗,哪个软件可以做计算机二级office题
  7. oppo手机计算机的隐藏功能介绍,OPPO手机有什么隐藏功能?这一波强大又实用的功能了解一下~...
  8. 限流之滑动窗口算法实战
  9. COMSOL 建模简易保温杯热传导过程整理
  10. Java杂谈来一发(九)线程状态