基于Python和Django框架的二级学院资料室图书管理系统设计与实现

2020-12-04 07:48吴春梅蒋林利余荣川
无线互联科技 2020年16期
关键词:列表管理员页面

吴春梅,蒋林利,余荣川

(广西科技师范学院,广西 来宾 546199)

0 引言

在信息化、高科技的环境下,生活随着环境的改变更趋向便利化、信息化、高效化,现高校的图书馆书籍借阅都是采用信息化管理操作[1]。二级学院的书籍具有专业性强,查阅、借取更方便等特点,但目前其内部的图书资料大多数都是由人工登记,存在不可控因素。因此,设计一个简单易用、轻松管理、对运行环境要求不高且易于维护的管理系统是十分必要的。

1 相关技术

该系统编程采用Python语言,整体设计使用Django框架,前端页面采用Bootstrap框架,数据存储主要使用了Django框架中内置数据库的SQLite。版本选择较稳定的Python 3.6,Django 2及SQLite 3。

1.1 语言

Python语言是一种应用广泛的、开源的、面向对象的、动态的高级编程语言[2],具有语法简洁易懂、开发周期短、可读性强、可移植性和跨平台等优点。采用Python开发的系统可加强服务器程序的适应性,使得服务器程序能在原有的服务器上运行,不需要为服务器更换操作系统。

1.2 框架

Django是一种基于Python编写的Web开发框架,主要采用模型-视图-控制器(Model-View-Controller,MVC)的设计模式,支持多种插件和自建工具包,并具有丰富的内部工具应用。Django使用几个配置和简单的几行代码就能实现复杂的网站开发和维护工作,在很大程度上提升了系统的执行效率、稳定性和网络的安全性等[3]。

Bootstrap是基于HTML+CSS+JavaScript的框架,是目前流行的框架之一,支持H5,CSS 3和移动端浏览器。

1.3 数据库

SQLite 数据库是一款轻量级、跨平台的关系型数据库,广泛应用于嵌入系统或者小规模的应用软件开发中,将整个数据库包括表、定义、索引以及数据本身作为一个单独的文件存储在主机中,具有轻量灵活、简单、方便使用等特点[3]。

2 管理系统设计的组成

基于Python-Django技术设计的二级学院图书管理系统,主要是解决人工操作过程中存在的一些问题,如检索速度慢、还书借书等信息不及时更新以及人为因素导致书籍管理等问题,有效地提高图书管理效率。该系统的设计主要针对以管理员身份的管理。以管理员的身份登录后,共设有5个模块,如图1所示。

图1 图书管理系统模块的组成

二级学院资料室图书管理系统的设计,是在经过对大量图书管理系统的需求进行详细调研以及对二级学院自身资料室图书管理的具体分析的基础上设计的,其数据流向主要有读者管理信息和书籍管理信息[4],其数据流向如图2所示。

图2 二级资料室图书管理系统的信息数据流

3 系统的功能实现

管理员登录页面,当管理员输入用户名和密码并点击登录后,数据会以加密的方式传递到后端,后端将前端获取的加密数据与数据库中的数据进行验证,验证成功即可登录,验证失败则提示错误。登录页面如图3所示。

管理员登录成功后,跳转到如图4所示,该页面左侧的导航菜单是5个功能模块:书籍列表,读者列表、书籍管理、读者管理以及借阅管理。其中,书籍管理、读者管理和借阅管理模块内都设有子模块。

图3 登录页面

图4 管理员页面

3.1 书籍列表模块

书籍列表模块,主要用于图书检索,对书籍信息包括序号、书籍名称、ISBN、出版社、数量、单价、可借阅数量、入库时间等进行搜索。搜索的结果按页显示,便于用户查阅。

3.2 读者列表模块

读者列表模块主要用于借阅资料的读者检索,对读者信息包括学号或工号、姓名、部门、专业、班级、联系方式、时间等进行搜索。搜索的结果按页显示,便于用户查阅。

3.3 书籍管理模块

书籍管理模块内设有3个子模块,即添加书籍、修改书籍信息和删除书籍。在添加书籍模块中,图书管理员按图5所示填写书籍信息,点击提交按钮后,信息传至后端,后端对数据进行校验后,如果正确即可保存至数据库,并返回至书籍列表页面。修改书籍信息模块,页面如图6所示,将会显示书籍相关信息和编辑按钮,管理员选择要修改的书籍,点击编辑按钮即可跳转到本书籍的修改,页面图7所示。点击编辑按钮后,跳转到具体的书籍信息修改页面,在该页面中,可显示书籍历史记录,图书管理员可根据具体情况修改书籍的信息,填写书籍相关信息后,点击“提交”即可将信息传至后端,后端进行校验后,将信息写入数据库,完成对书籍信息的修改编辑;如果不想编辑,可点击“返回首页”退出对书籍的信息修改。

图5 添加书籍页面

图6 修改书籍列表页面

图7 具体修改书籍信息页面

删除书籍模块在页面右侧,如图8所示。显示书籍各项信息以及编辑按钮,管理员选择要修改的书籍,点击“删除”按钮后,会跳转到删除确认页面,该页面会显示要删除的书籍的名称,如果确认删除,可点击“确定”按钮进行删除;点击“取消”按钮可放弃删除,返回删除书籍功能页面;点击“返回首页”,可返回书籍列表页面。

图8 删除书籍页面

3.4 读者管理模块

读者管理模块内设有3个子模块。管理员可通过这3个模块分别对读者信息添加、修改和删除操作。实现方法跟上述的书籍管理模块相似。

3.5 借阅管理模块

借阅管理模块设有3个子模块,即借阅书籍、归还书籍和记录查阅。在子模块借阅书籍页面中,右侧如图9所示,显示可借阅书籍的书籍名称等信息和借阅按钮。管理员选择要读者需要借阅的书籍,点击“借阅”按钮即可跳转到本书籍的借阅页面。当书籍的可借阅数量为0时,该书籍将不会出现在借阅功能页面。

图9 借阅书籍列表页面

当点击“借阅”按钮后,跳转至借阅书籍页面,如图10所示,图书管理员选择借阅读者的等信息,点击“提交”按钮后,信息传至后端,后端进行信息校验,如果正确,将借阅信息填入数据库,并将本书的可借阅数量减1;如放弃借阅,点击“返回首页”按钮后,即可返回借阅书籍页面。

归还书籍模块,在页面右侧,如图11所示,显示已经被借阅书籍的相关信息和归还按钮。管理员选择读者需要归还的书籍,点击“归还”按钮即可跳转到本书籍的归还页面,如图12所示。由图书管理员填写页面信息,点击“提交”按钮后,信息传至后端,后端进行信息校验,如果正确,将借阅信息填入数据库,并将本书的可借阅数量加1;如放弃归还,点击“返回首页”按钮后,即可返回归还书籍页面;如未被借阅的书籍,将不会出现在归还书籍功能页面。

图10 借阅书籍页面

图11 归还书籍列表页面

图12 归还书籍页面

记录查询模块,页面右侧如图13所示,显示已经被借阅书籍的名称、借阅本书的读者姓名、借阅日期,预计归还日期、借阅备注信息、实际归还时间、归还备注信息以及是否归还。未被归还的书籍,归还状态将显示为“否”;已归还的书籍归还状态将显示为“是”。

图13 借阅历史记录页面

4 测试

调试系统设计并完成编码后,进行实际数据录入和系统测试。放在学校的局域网中进行模拟使用,在测试过程中,系统出现的问题主要包括form表单无法提交数据,显示跨站请求非法。根据提示的错误信息将系统设置为允许跨站请求,即可通过form表单提交数据。此外,访问非法地址请求时,系统报错,没有显示404界面,经检查发现系统部署后,没有将Debug功能关闭,将系统设置里面的Debug功能关闭并添加404界面即可解决。系统正常运行。

5 结语

以广西科技师范学院二级学院——数学与计算机科学学院图书资料为例,用信息管理系统模式取代原来以人工登记借阅书籍资料为主的管理模式。在二级学院图书管理系统开发的过程中,本文采用Python和Django技术,根据学院实际需求进行分析,对管理系统进行设计、编码、调试、运行等一系列步骤。其中,在开发的过程中不断修改方案,反复调试。二级学院图书管理系统可实现管理员登录、书籍列表,读者列表、书籍管理、读者管理以及借阅管理等功能。测试结果表明,该管理系统能满足二级学院资料室的书籍资料管理和借阅工作,有效地提升了管理效率。系统存在一些不足,进一步工作是对系统扩展模块功能增大应用范围,在安全性能上进一步提高,使书籍资料管理系统的功能更加完善。

猜你喜欢
列表管理员页面
刷新生活的页面
学习运用列表法
我是图书管理员
我是图书管理员
可疑的管理员
列表画树状图各有所长
不含3-圈的1-平面图的列表边染色与列表全染色
网站结构在SEO中的研究与应用
浅析ASP.NET页面导航技术