基于 Python 的图书借阅管理系统(附报告源码)下

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介: 基于 Python 的图书借阅管理系统(附报告源码)

顺序图


1.注册


用户打开注册页面,输入个人信息,RegisterView 获得后向 User 查询该用户是否不存在,若是则在 User 中增添该用户,并将本次注册操作写入 Log,然后返回注册成功信息。


20e0c843374c474915e4647f6584d9ac_2eef59e50ffe5c42ccab1d53e2054045.jpeg


2.登录


用户打开登录页面,输入用户名和密码,LoginView 获得后向 User 查询该用户是否存在,若是则将本次登录操作写入 Log,然后跳转页面到用户的个人中心。HomeView 向 Borrow 查询该用户的借阅信息,并返回借阅列表。


01c1468bd9e8975b13d488ff4550f401_eaaca622a80e21abc6d1e73f10d6b131.jpeg


3.借书


用户打开查询界面,输入想要借的书籍的关键字,SearchView 获得后向 Book 查询相关书籍,并返回书籍列表。用户点击列表项目的借书按钮,BorrowView 向 Borrow 中增添一条该用户的借书记录,然后在 Book 中将该书籍设置为不可借,并将本次借书操作写入 Log,最后返回借书成功信息。


f14f45cb147a2d97348b3bb432af4ea3_fa11c90ee9bbe363fa456243e13c126c.jpeg


4.还书


用户打开个人中心页面,HomeView 向 Borrow 查询该用户的借阅信息,并返回借阅列表。用户点击列表项目的还书按钮,ReturnView 从 Borrow 中删除这条借书记录,然后在 Book 中将该书籍设置为可借,并将本次还书操作写入 Log,最后返回还书成功信息。如果还书逾期,则还将返回缴纳罚金的提示信息。


c1ee47d8b05c8902b917a8c41830bdf2_fa218dd8433e2926c655b24047e6d752.jpeg


状态图


0f6e0329835bed71f5cccd29b1a869b0_193fe98df597f75edf929be615f3f4ac.jpeg


系统部署说明


Requirements


  • Python 3.6
  • Django 3
  • Bootstrap 3
  • jQuery 3
  • MySQL 8


启动系统


1.在 MySQL 中新建一个名为 library 的数据库,字符集选择 UTF-8

2.安装 MySQL 驱动 mysqlclient

pip install mysqlclient

3.在 library/library/settings.py 中配置数据库的 USER 和 PASSWORD。

DATABASES = {
    'default': {
        'ENGINE': 'django.db.backends.mysql',
        'NAME': 'library',
        'USER': '****',
        'PASSWORD': '************',
        'HOST': '127.0.0.1',
        'PORT': '3306',
    }
}

4.进入项目目录下。

cd ./library

5.迁移数据库。

python manage.py makemigrations
python manage.py migrate

6.启动系统。

python manage.py runserver

7.访问 127.0.0.1:8000 。


展示后修改和优化说明


1.增加注册时的合法性检验:学号必须为 8 位(多于 8 位的部分无法输入),密码不能少于 6 位,否则将给出提示。


fa56322614656285a365223aee6a4409_72b4b96b613db94485afeecb9ee4d16e.jpeg


2.实现对书名、作者、出版社三个字段的模糊查询。此外,将有馆藏记录但当前已借出的书籍也显示出来(没有借书按钮),而不是仅展示当前能借的书籍。这样能告诉用户这本书是有的,只是当前已经被别人借走了,可以过一段时间再来查询。


fe4fc6a5ef5394591621274b3dbf6d6b_cc6caadc17c753309c5eb907c2edd033.jpeg


源码下载


源码下载地址:https://download.csdn.net/download/gdutxiaoxu/87631097


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
13天前
|
存储 文件存储 Python
Python基础 --- 实现学生管理系统(Python 文件版本)
Python基础 --- 实现学生管理系统(Python 文件版本)
33 4
|
14天前
|
存储 缓存 API
python源码解读_python代码解释
python源码解读_python代码解释
|
16天前
|
Python
10个Python绘画表白代码【内附源码,再不收藏你只能单身了】_有趣的python代码表白
10个Python绘画表白代码【内附源码,再不收藏你只能单身了】_有趣的python代码表白
|
17天前
|
数据安全/隐私保护 Python 算法
Python 蜻蜓fm有声书批量下载 支持账号登录 原创源码,2024年最新Python面试回忆录
Python 蜻蜓fm有声书批量下载 支持账号登录 原创源码,2024年最新Python面试回忆录
|
19天前
|
前端开发 UED Python
Wagtail-基于Python Django的内容管理系统CMS实现公网访问
Wagtail-基于Python Django的内容管理系统CMS实现公网访问
|
19天前
|
Python
【Python笔记】pip intall -e命令:让你的工程直接使用开源包的源码,可断点调试,修改源码!
【Python笔记】pip intall -e命令:让你的工程直接使用开源包的源码,可断点调试,修改源码!
23 0
|
19天前
|
存储 Python
Python 基于列表实现的通讯录管理系统(有完整源码)
Python 基于列表实现的通讯录管理系统(有完整源码)
39 0
|
19天前
|
Python
python 文件操作和学生管理系统练习
python 文件操作和学生管理系统练习
24 0
|
19天前
|
JavaScript 前端开发 API
用Python和Vue构建内容管理系统(CMS):一步步指南
【4月更文挑战第10天】本文介绍了如何使用Python的Django框架和前端的Vue.js构建内容管理系统(CMS)。Django提供后端支持,遵循MTV模式,Vue.js则用于创建数据驱动的用户界面。步骤包括环境准备、Django项目与应用创建、定义数据模型、创建API接口、搭建Vue项目、集成Django与Vue、性能优化及部署上线。这种结合充分利用两者优势,实现高效、可扩展的CMS解决方案,适应未来智能化、个性化的趋势。
|
Linux C语言 开发者
源码安装Python学会有用还能装逼 | 解决各种坑
相信朋友们都看过这个零基础学习Python的开篇了
381 0
源码安装Python学会有用还能装逼 | 解决各种坑