吳春梅,蔣林利,余榮川
(廣西科技師范學(xué)院,廣西 來賓 546199)
在信息化、高科技的環(huán)境下,生活隨著環(huán)境的改變更趨向便利化、信息化、高效化,現(xiàn)高校的圖書館書籍借閱都是采用信息化管理操作[1]。二級學(xué)院的書籍具有專業(yè)性強(qiáng),查閱、借取更方便等特點(diǎn),但目前其內(nèi)部的圖書資料大多數(shù)都是由人工登記,存在不可控因素。因此,設(shè)計(jì)一個(gè)簡單易用、輕松管理、對運(yùn)行環(huán)境要求不高且易于維護(hù)的管理系統(tǒng)是十分必要的。
該系統(tǒng)編程采用Python語言,整體設(shè)計(jì)使用Django框架,前端頁面采用Bootstrap框架,數(shù)據(jù)存儲(chǔ)主要使用了Django框架中內(nèi)置數(shù)據(jù)庫的SQLite。版本選擇較穩(wěn)定的Python 3.6,Django 2及SQLite 3。
Python語言是一種應(yīng)用廣泛的、開源的、面向?qū)ο蟮?、?dòng)態(tài)的高級編程語言[2],具有語法簡潔易懂、開發(fā)周期短、可讀性強(qiáng)、可移植性和跨平臺等優(yōu)點(diǎn)。采用Python開發(fā)的系統(tǒng)可加強(qiáng)服務(wù)器程序的適應(yīng)性,使得服務(wù)器程序能在原有的服務(wù)器上運(yùn)行,不需要為服務(wù)器更換操作系統(tǒng)。
Django是一種基于Python編寫的Web開發(fā)框架,主要采用模型-視圖-控制器(Model-View-Controller,MVC)的設(shè)計(jì)模式,支持多種插件和自建工具包,并具有豐富的內(nèi)部工具應(yīng)用。Django使用幾個(gè)配置和簡單的幾行代碼就能實(shí)現(xiàn)復(fù)雜的網(wǎng)站開發(fā)和維護(hù)工作,在很大程度上提升了系統(tǒng)的執(zhí)行效率、穩(wěn)定性和網(wǎng)絡(luò)的安全性等[3]。
Bootstrap是基于HTML+CSS+JavaScript的框架,是目前流行的框架之一,支持H5,CSS 3和移動(dòng)端瀏覽器。
SQLite 數(shù)據(jù)庫是一款輕量級、跨平臺的關(guān)系型數(shù)據(jù)庫,廣泛應(yīng)用于嵌入系統(tǒng)或者小規(guī)模的應(yīng)用軟件開發(fā)中,將整個(gè)數(shù)據(jù)庫包括表、定義、索引以及數(shù)據(jù)本身作為一個(gè)單獨(dú)的文件存儲(chǔ)在主機(jī)中,具有輕量靈活、簡單、方便使用等特點(diǎn)[3]。
基于Python-Django技術(shù)設(shè)計(jì)的二級學(xué)院圖書管理系統(tǒng),主要是解決人工操作過程中存在的一些問題,如檢索速度慢、還書借書等信息不及時(shí)更新以及人為因素導(dǎo)致書籍管理等問題,有效地提高圖書管理效率。該系統(tǒng)的設(shè)計(jì)主要針對以管理員身份的管理。以管理員的身份登錄后,共設(shè)有5個(gè)模塊,如圖1所示。
圖1 圖書管理系統(tǒng)模塊的組成
二級學(xué)院資料室圖書管理系統(tǒng)的設(shè)計(jì),是在經(jīng)過對大量圖書管理系統(tǒng)的需求進(jìn)行詳細(xì)調(diào)研以及對二級學(xué)院自身資料室圖書管理的具體分析的基礎(chǔ)上設(shè)計(jì)的,其數(shù)據(jù)流向主要有讀者管理信息和書籍管理信息[4],其數(shù)據(jù)流向如圖2所示。
圖2 二級資料室圖書管理系統(tǒng)的信息數(shù)據(jù)流
管理員登錄頁面,當(dāng)管理員輸入用戶名和密碼并點(diǎn)擊登錄后,數(shù)據(jù)會(huì)以加密的方式傳遞到后端,后端將前端獲取的加密數(shù)據(jù)與數(shù)據(jù)庫中的數(shù)據(jù)進(jìn)行驗(yàn)證,驗(yàn)證成功即可登錄,驗(yàn)證失敗則提示錯(cuò)誤。登錄頁面如圖3所示。
管理員登錄成功后,跳轉(zhuǎn)到如圖4所示,該頁面左側(cè)的導(dǎo)航菜單是5個(gè)功能模塊:書籍列表,讀者列表、書籍管理、讀者管理以及借閱管理。其中,書籍管理、讀者管理和借閱管理模塊內(nèi)都設(shè)有子模塊。
圖3 登錄頁面
圖4 管理員頁面
書籍列表模塊,主要用于圖書檢索,對書籍信息包括序號、書籍名稱、ISBN、出版社、數(shù)量、單價(jià)、可借閱數(shù)量、入庫時(shí)間等進(jìn)行搜索。搜索的結(jié)果按頁顯示,便于用戶查閱。
讀者列表模塊主要用于借閱資料的讀者檢索,對讀者信息包括學(xué)號或工號、姓名、部門、專業(yè)、班級、聯(lián)系方式、時(shí)間等進(jìn)行搜索。搜索的結(jié)果按頁顯示,便于用戶查閱。
書籍管理模塊內(nèi)設(shè)有3個(gè)子模塊,即添加書籍、修改書籍信息和刪除書籍。在添加書籍模塊中,圖書管理員按圖5所示填寫書籍信息,點(diǎn)擊提交按鈕后,信息傳至后端,后端對數(shù)據(jù)進(jìn)行校驗(yàn)后,如果正確即可保存至數(shù)據(jù)庫,并返回至?xí)斜眄撁?。修改書籍信息模塊,頁面如圖6所示,將會(huì)顯示書籍相關(guān)信息和編輯按鈕,管理員選擇要修改的書籍,點(diǎn)擊編輯按鈕即可跳轉(zhuǎn)到本書籍的修改,頁面圖7所示。點(diǎn)擊編輯按鈕后,跳轉(zhuǎn)到具體的書籍信息修改頁面,在該頁面中,可顯示書籍歷史記錄,圖書管理員可根據(jù)具體情況修改書籍的信息,填寫書籍相關(guān)信息后,點(diǎn)擊“提交”即可將信息傳至后端,后端進(jìn)行校驗(yàn)后,將信息寫入數(shù)據(jù)庫,完成對書籍信息的修改編輯;如果不想編輯,可點(diǎn)擊“返回首頁”退出對書籍的信息修改。
圖5 添加書籍頁面
圖6 修改書籍列表頁面
圖7 具體修改書籍信息頁面
刪除書籍模塊在頁面右側(cè),如圖8所示。顯示書籍各項(xiàng)信息以及編輯按鈕,管理員選擇要修改的書籍,點(diǎn)擊“刪除”按鈕后,會(huì)跳轉(zhuǎn)到刪除確認(rèn)頁面,該頁面會(huì)顯示要?jiǎng)h除的書籍的名稱,如果確認(rèn)刪除,可點(diǎn)擊“確定”按鈕進(jìn)行刪除;點(diǎn)擊“取消”按鈕可放棄刪除,返回刪除書籍功能頁面;點(diǎn)擊“返回首頁”,可返回書籍列表頁面。
圖8 刪除書籍頁面
讀者管理模塊內(nèi)設(shè)有3個(gè)子模塊。管理員可通過這3個(gè)模塊分別對讀者信息添加、修改和刪除操作。實(shí)現(xiàn)方法跟上述的書籍管理模塊相似。
借閱管理模塊設(shè)有3個(gè)子模塊,即借閱書籍、歸還書籍和記錄查閱。在子模塊借閱書籍頁面中,右側(cè)如圖9所示,顯示可借閱書籍的書籍名稱等信息和借閱按鈕。管理員選擇要讀者需要借閱的書籍,點(diǎn)擊“借閱”按鈕即可跳轉(zhuǎn)到本書籍的借閱頁面。當(dāng)書籍的可借閱數(shù)量為0時(shí),該書籍將不會(huì)出現(xiàn)在借閱功能頁面。
圖9 借閱書籍列表頁面
當(dāng)點(diǎn)擊“借閱”按鈕后,跳轉(zhuǎn)至借閱書籍頁面,如圖10所示,圖書管理員選擇借閱讀者的等信息,點(diǎn)擊“提交”按鈕后,信息傳至后端,后端進(jìn)行信息校驗(yàn),如果正確,將借閱信息填入數(shù)據(jù)庫,并將本書的可借閱數(shù)量減1;如放棄借閱,點(diǎn)擊“返回首頁”按鈕后,即可返回借閱書籍頁面。
歸還書籍模塊,在頁面右側(cè),如圖11所示,顯示已經(jīng)被借閱書籍的相關(guān)信息和歸還按鈕。管理員選擇讀者需要?dú)w還的書籍,點(diǎn)擊“歸還”按鈕即可跳轉(zhuǎn)到本書籍的歸還頁面,如圖12所示。由圖書管理員填寫頁面信息,點(diǎn)擊“提交”按鈕后,信息傳至后端,后端進(jìn)行信息校驗(yàn),如果正確,將借閱信息填入數(shù)據(jù)庫,并將本書的可借閱數(shù)量加1;如放棄歸還,點(diǎn)擊“返回首頁”按鈕后,即可返回歸還書籍頁面;如未被借閱的書籍,將不會(huì)出現(xiàn)在歸還書籍功能頁面。
圖10 借閱書籍頁面
圖11 歸還書籍列表頁面
圖12 歸還書籍頁面
記錄查詢模塊,頁面右側(cè)如圖13所示,顯示已經(jīng)被借閱書籍的名稱、借閱本書的讀者姓名、借閱日期,預(yù)計(jì)歸還日期、借閱備注信息、實(shí)際歸還時(shí)間、歸還備注信息以及是否歸還。未被歸還的書籍,歸還狀態(tài)將顯示為“否”;已歸還的書籍歸還狀態(tài)將顯示為“是”。
圖13 借閱歷史記錄頁面
調(diào)試系統(tǒng)設(shè)計(jì)并完成編碼后,進(jìn)行實(shí)際數(shù)據(jù)錄入和系統(tǒng)測試。放在學(xué)校的局域網(wǎng)中進(jìn)行模擬使用,在測試過程中,系統(tǒng)出現(xiàn)的問題主要包括form表單無法提交數(shù)據(jù),顯示跨站請求非法。根據(jù)提示的錯(cuò)誤信息將系統(tǒng)設(shè)置為允許跨站請求,即可通過form表單提交數(shù)據(jù)。此外,訪問非法地址請求時(shí),系統(tǒng)報(bào)錯(cuò),沒有顯示404界面,經(jīng)檢查發(fā)現(xiàn)系統(tǒng)部署后,沒有將Debug功能關(guān)閉,將系統(tǒng)設(shè)置里面的Debug功能關(guān)閉并添加404界面即可解決。系統(tǒng)正常運(yùn)行。
以廣西科技師范學(xué)院二級學(xué)院——數(shù)學(xué)與計(jì)算機(jī)科學(xué)學(xué)院圖書資料為例,用信息管理系統(tǒng)模式取代原來以人工登記借閱書籍資料為主的管理模式。在二級學(xué)院圖書管理系統(tǒng)開發(fā)的過程中,本文采用Python和Django技術(shù),根據(jù)學(xué)院實(shí)際需求進(jìn)行分析,對管理系統(tǒng)進(jìn)行設(shè)計(jì)、編碼、調(diào)試、運(yùn)行等一系列步驟。其中,在開發(fā)的過程中不斷修改方案,反復(fù)調(diào)試。二級學(xué)院圖書管理系統(tǒng)可實(shí)現(xiàn)管理員登錄、書籍列表,讀者列表、書籍管理、讀者管理以及借閱管理等功能。測試結(jié)果表明,該管理系統(tǒng)能滿足二級學(xué)院資料室的書籍資料管理和借閱工作,有效地提升了管理效率。系統(tǒng)存在一些不足,進(jìn)一步工作是對系統(tǒng)擴(kuò)展模塊功能增大應(yīng)用范圍,在安全性能上進(jìn)一步提高,使書籍資料管理系統(tǒng)的功能更加完善。