摘" 要:為優(yōu)化高校宿舍管理模式,提升管理效率,文章設(shè)計并實現(xiàn)了一套基于B/S架構(gòu)的學(xué)生宿舍管理系統(tǒng)。該系統(tǒng)采用Python作為核心開發(fā)語言,運用Bootstrap框架構(gòu)建響應(yīng)式前端界面,基于Django框架搭建后端服務(wù)體系。實驗結(jié)果表明,系統(tǒng)具有界面友好、操作便捷、功能完整等特點,實現(xiàn)了學(xué)生信息登記、智能宿舍分配、訪客動態(tài)管理、在線報修處理、獎懲記錄追蹤等全流程信息化管理。該系統(tǒng)有效整合了傳統(tǒng)宿舍管理中分散的業(yè)務(wù)模塊,不僅為高校提供了標(biāo)準(zhǔn)化管理解決方案,還通過數(shù)字化手段推動宿舍管理向智能化、信息化方向轉(zhuǎn)變,具有較高的實踐應(yīng)用價值。
關(guān)鍵詞:Python;Bootstrap;宿舍管理;管理系統(tǒng)
中圖分類號:TP311" 文獻標(biāo)識碼:A" 文章編號:2096-4706(2025)04-0124-05
Research and Implementation of College Dormitory Management System Based on Python
TAN Yan
(Suzhou Polytechnic Institute of Agriculture, Suzhou" 215008, China)
Abstract: In order to optimize the college dormitory management mode and improve the management efficiency, this paper designs and implements a set of student dormitory management system based on B/S architecture. The system utilizes Python as the core development language. The Bootstrap framework is used to build a responsive front-end interface, and a back-end service system is built based on the Django framework. The experimental results show that the system has the characteristics of user-friendly interface, convenient operation and complete functions, realizing the full process information management of student information registration, intelligent dormitory allocation, visitor dynamic management, online repair processing, reward and punishment record tracking, and so on. This system effectively integrates the decentralized business modules in traditional dormitory management. It not only provides a standardized management solution for colleges and universities, but also promotes the transformation of dormitory management to the direction of intelligence and information through digital means. It has high practical application value.
Keywords: Python; Bootstrap; dormitory management; management system
0" 引" 言
近年來,隨著高等教育的迅速普及,高校學(xué)生人數(shù)持續(xù)增加,學(xué)生宿舍作為學(xué)生們的居住地,也在一定程度上影響著學(xué)生的身心健康和學(xué)習(xí)效率[1]。宿舍管理工作不僅任務(wù)重,而且情況復(fù)雜,以往宿舍管理員通常以人工方式記錄,學(xué)生聚集和異常作息更是難于辨識,這些高校日常宿舍管理工作給宿管帶來了不小挑戰(zhàn)[2],特別是在登記個人信息、調(diào)配宿舍、宿舍維修管理和分配宿舍等方面,很多學(xué)校仍然使用手工登記、辦公軟件處理等傳統(tǒng)方式進行管理,宿舍管理工作仍有很多不便之處[3],如何對宿舍進行高效管理,已成為高校學(xué)生管理中的一個難題。
信息技術(shù)被廣泛應(yīng)用在多個領(lǐng)域,其中一個重要的應(yīng)用領(lǐng)域就是高校,Web技術(shù)為高校宿舍的智能化帶來了新的發(fā)展機遇,也為高校信息化建設(shè)指明了方向[4]。搭建一個學(xué)生宿舍管理系統(tǒng)不僅可以有效地解決這些問題,而且可以推動宿舍管理向便利化、信息化方向發(fā)展[5],更大限度地降低學(xué)生宿舍管理的成本,運用計算機技術(shù)構(gòu)建智慧宿舍管理系統(tǒng)實現(xiàn)宿舍管理職能的智能化,成為解決宿舍管理難題的重要手段。
本文針對傳統(tǒng)的宿舍管理方式的不足,以提升學(xué)生宿舍管理效率為目標(biāo),采用Python、Django、MySQL、Bootstrap等技術(shù),設(shè)計出了一個學(xué)生宿舍管理系統(tǒng),該系統(tǒng)實現(xiàn)了學(xué)生的宿舍分配、學(xué)生宿舍信息管理,以及日常的訪客管理、宿舍報修和獎懲管理等功能,建立更加科學(xué)的宿舍管理方法,優(yōu)化了宿舍管理效率,降低了宿舍管理的難度。
1" 關(guān)鍵技術(shù)介紹
本文系統(tǒng)將信息化管理的范圍覆蓋到宿舍分配、訪客管理、報修管理等多個方面,考慮到B/S結(jié)構(gòu)具有維護方便、業(yè)務(wù)便捷等特點,本文的宿舍管理系統(tǒng)采用B/S結(jié)構(gòu)進行開發(fā),管理人員只需要一臺可以連接到互聯(lián)網(wǎng)的設(shè)備就能登錄系統(tǒng),進行管理和操作。系統(tǒng)的頁面效果采用HTML、jQuery和Bootstrap技術(shù)進行設(shè)計和實現(xiàn),頁面功能通過Django框架和MySQL數(shù)據(jù)庫實現(xiàn)。
1.1" Bootstrap框架
Bootstrap是一個前端開發(fā)框架,它基于HTML、CSS、JavaScript語言進行開發(fā),它提供的工具包使得Web開發(fā)更加快捷,該框架不僅提供了一個帶有柵格系統(tǒng)的基本結(jié)構(gòu),并且包含了豐富的Web組件,用于創(chuàng)建圖像、下拉菜單、導(dǎo)航欄、警告框、彈出框等,利用這些組件可以快速地搭建一個功能完備的網(wǎng)站。Bootstrap最大的特點是支持響應(yīng)式布局,不僅支持PC端的各種分辨率的顯示,還支持移動端、手機等屏幕的響應(yīng)式切換顯示[6]。
1.2" Python語言
Python語言是一種面向?qū)ο蟮母呒壘幊陶Z言,具有類庫豐富、使用方便、易學(xué)易用和免費開源等特點,為程序開發(fā)提供了多種方案,目前已成為目前最流行的編程語言之一。
Django是一款基于Python語言的開源框架,可方便快捷地開發(fā)高品質(zhì)、功能完善的Web應(yīng)用程序。它構(gòu)建了數(shù)據(jù)庫模型與應(yīng)用頁面模板間橋梁,幫助開發(fā)者快速構(gòu)建應(yīng)用場景[7],主要借助相應(yīng)jQuery庫及Django模板特性設(shè)計與整個網(wǎng)絡(luò)性能管理系統(tǒng)功能相對應(yīng)的數(shù)據(jù)可視化及分析模板[8],將業(yè)務(wù)邏輯層、前端視圖層及數(shù)據(jù)模型層以高內(nèi)聚低耦合的方式實現(xiàn),且內(nèi)嵌有輕量級Web服務(wù)器,使架構(gòu)于其上的Web開發(fā)更加迅捷、簡便、高效[9]。
1.3" MySQL數(shù)據(jù)庫
MySQL是一個關(guān)系型的數(shù)據(jù)庫管理系統(tǒng),它也是目前最常用、最常見的數(shù)據(jù)庫之一。MySQL作為一款開放源代碼的關(guān)系型數(shù)據(jù)庫庫管理系統(tǒng),具有可以支持多個操作系統(tǒng)、節(jié)省CPU資源、可提供檢查優(yōu)化管理工具以及多種語言支持的優(yōu)點[10],相對于大型的數(shù)據(jù)庫來說比較容易讓用戶上手使用,逐漸成為中小型企業(yè)應(yīng)用數(shù)據(jù)庫的首選,是目前非常流行、應(yīng)用廣泛的數(shù)據(jù)庫管理系統(tǒng)。
2" 系統(tǒng)設(shè)計
2.1" 需求分析
通過對高校宿舍管理的需求進行調(diào)研,分析宿舍管理系統(tǒng)的功能,以此對系統(tǒng)結(jié)構(gòu)進行規(guī)劃和設(shè)計。
宿舍管理人員負責(zé)宿舍日常的管理工作,同時對學(xué)生賬戶進行管理和維護,在系統(tǒng)權(quán)限上需要對系統(tǒng)管理員、樓棟管理員與學(xué)生用戶進行區(qū)分。宿舍信息的維護、宿舍的分配是宿舍日常管理中最重要的工作之一,一般由樓棟管理員來操作。系統(tǒng)中應(yīng)包括報修信息上報功能,以便管理人員及時處理宿舍的維修需求。為確保宿舍安全,需要對外來訪客人員進行登記,以便對訪客信息進行記錄和管理。學(xué)生宿舍平時的表現(xiàn)可通過系統(tǒng)進行記錄,以便后期作為學(xué)生評獎評優(yōu)的參考。
通過對以上需求進行分析,宿舍管理系統(tǒng)劃分管理員管理、用戶管理、宿舍管理、訪客管理、報修管理和獎懲管理六個模塊,功能模塊如圖1所示。管理員模塊包括添加管理員和管理員信息管理功能;用戶模塊包括添加用戶和用戶信息管理功能;宿舍模塊包括添加宿舍、分配宿舍和宿舍管理功能;訪客模塊包括添加訪客和訪客信息管理功能;報修模塊包括添加報修和報修信息管理功能;獎懲模塊包括添加獎懲和獎懲信息管理功能。
2.2" 數(shù)據(jù)庫設(shè)計
根據(jù)宿舍管理系統(tǒng)的功能模塊設(shè)計,MySQL數(shù)據(jù)庫中包括了管理員信息表、用戶表、宿舍信息表、訪客表、報修表、獎懲表等數(shù)據(jù)表。宿舍表dormitory的具體結(jié)構(gòu)如表1所示,其中包含了id、d_type、bed等8個字段,分別存儲宿舍號、宿舍類型、床位數(shù)等數(shù)據(jù)。
3" 系統(tǒng)開發(fā)
3.1" 項目結(jié)構(gòu)
在代碼結(jié)構(gòu)上,templates文件夾的結(jié)構(gòu)按照管理管理、用戶管理、訪客管理、報修管理等六個一級菜單劃分為六個文件夾,每個文件夾中包含各模塊下的添加、刪除、修改、查詢等頁面,公共頁面如:header.html、left.html等,則直接設(shè)置在templates文件夾中,供各模塊進行調(diào)用。
3.2" 對象模型
根據(jù)MySQL數(shù)據(jù)表,構(gòu)建對象模型,通過Django自帶的對象關(guān)系映射(ORM)模型,將對象模型映射到模型數(shù)據(jù)庫結(jié)構(gòu)里。以宿舍表dormitory為例,對應(yīng)的模型代碼如下:
class Dormitory(models.Model):
d_id = models.CharField('編號', max_length=50)
d_type = models.CharField('宿舍類型', max_length=20)
bed = models.IntegerField('床位數(shù)', default=0)
direction = models.CharField('朝向', max_length=4)
area = models.DecimalField('面積', max_digits=6, decimal_places=2)
director = models.CharField('負責(zé)人', max_length=50)
creation_date = models.DateTimeField('創(chuàng)建日期',1=True,blank=True )
3.3" 前端開發(fā)
前端頁面采用Bootstrap左右結(jié)構(gòu)的框架進行設(shè)計,首先在頁面中通過lt;linkgt;標(biāo)簽導(dǎo)入bootstrap.min.css樣式表和jQuery.js等文件。每個頁面分為頭部、左側(cè)、主體、底部幾個部分,其中頭部、左側(cè)、底部為所有頁面共用。首先通過代碼{% include \"head.html\" %},引入head.html頁面作為頭部,生成頭部左側(cè)為系統(tǒng)名稱和圖標(biāo)、右側(cè)為用戶登錄信息的效果。左側(cè)通過代碼{% include \"left.html\" %}引入菜單,效果由Bootstrap中的導(dǎo)航條代碼生成,系統(tǒng)共設(shè)置了六個一級菜單,每個一級菜單下設(shè)置了相應(yīng)的二級菜單。最后引入foot.html作為底部。
在頁面的主體部分,根據(jù)二級菜單功能顯示相應(yīng)的內(nèi)容,信息列表采用Bootstrap中的表格組件生成,表單采用Bootstrap中的面板和表單組件,通過表單添加.form-horizontal類,聯(lián)合預(yù)置的柵格類,實現(xiàn)label標(biāo)簽和控件組水平排列的布局,生成水平排列的表單樣式。
3.4" 后端開發(fā)
前后臺的交互主要通過view視圖函數(shù)來完成,控制器接收用戶從templates模板頁面發(fā)出的請求,處理請求并返回響應(yīng)。
頁面的查詢功能實現(xiàn)過程如下:以查詢宿舍列表為例,在view.py對應(yīng)的視圖函數(shù)中,首先判斷是否存在用戶登錄的session變量值,如果存在,則通過objects.all()函數(shù)獲取數(shù)據(jù)模型中所有的宿舍數(shù)據(jù),將數(shù)據(jù)渲染到前端的宿舍列表中。
顯示宿舍列表的代碼如下:
if request.session[\"user\"]:
data = Dormitory.objects.all()
return render(request, \"d_list.html\", {\"data\": data})
后端添加功能類似,首先在視圖函數(shù)中,接收用后在前端表單中通過POST方式提交過來的數(shù)據(jù),并驗證數(shù)據(jù)的有效性,然后使用objects.create()函數(shù)在宿舍表dormitory中新建一行,將接收到的數(shù)據(jù)進行保存。
4" 系統(tǒng)實現(xiàn)
4.1" 系統(tǒng)首頁
根據(jù)系統(tǒng)的功能設(shè)計,系統(tǒng)分為系統(tǒng)管理員和樓棟管理員兩種權(quán)限。登錄系統(tǒng)時,管理員輸入正確的用戶名和密碼后,即可通過身份驗證,進入系統(tǒng)首頁,界面外觀如圖2所示。登錄成功后,樓棟管理可以對用戶、宿舍、訪客、報修等信息進行查詢,也可以對管理員模塊的其他模塊數(shù)據(jù)進行添加、修改、刪除的操作。與樓棟管理員相比,系統(tǒng)管理員還可以操作管理員模塊,包括查詢、添加、修改、刪除樓棟管理員賬號。
4.2" 宿舍管理
宿舍管理模塊中設(shè)置了添加宿舍、宿舍分配和宿舍信息三個二級菜單。其中添加宿舍頁面用于管理員添加新的宿舍信息,效果如圖3所示,管理員在添加宿舍時,可按頁面提示輸入宿舍號、宿舍類型、床位數(shù)、朝向、面積和管理員名稱等信息,完成添加操作。
宿舍信息列表如圖4所示,頁面展示了關(guān)于宿舍的全部信息,這些信息與宿舍表中的數(shù)據(jù)相對應(yīng),包括編號、宿舍號、宿舍類型、面積、床位數(shù)、朝向、負責(zé)人、創(chuàng)建日期等數(shù)據(jù),同時每一行數(shù)據(jù)后面都設(shè)置了修改和刪除功能,方便管理員對每一行數(shù)據(jù)進行修改和刪除操作,其他模塊下的信息列表中都包含了這兩項功能。
4.3" 訪客管理
管理員通過點擊訪客管理模塊中的訪客信息二級菜單,即可打開訪客信息列表,如圖5所示。該頁面展示了關(guān)于訪客的全部信息,包括訪客姓名、被訪人、宿舍號、來訪原因、入樓時間和出樓時間等數(shù)據(jù)。
4.4" 報修管理
宿舍管理員通過點擊報修管理模塊中的添加報修,即可打開添加報修的頁面。在該頁面中,管理員輸入報修人員編號、樓棟、宿舍號、報修類型、問題描述、報修日期等信息,完成添加報修操作。
5" 結(jié)" 論
本文以提升學(xué)生宿舍管理效率為目標(biāo),采用Python、Django、MySQL、Bootstrap等技術(shù),設(shè)計并開發(fā)出了一個功能齊全、界面簡潔的高校學(xué)生宿舍管理系統(tǒng),該系統(tǒng)實現(xiàn)了學(xué)生的宿舍分配管理、學(xué)生宿舍信息管理、訪客管理,以及日常的宿舍報修、獎懲管理等功能。系統(tǒng)提供的多項功能,能夠滿足宿舍管理中的多種需求。系統(tǒng)的實現(xiàn),使宿舍管理工作實現(xiàn)信息化,大大減少了宿舍相關(guān)信息統(tǒng)計的工作量,為高校宿舍管理工作的信息化提供了新的途徑。
參考文獻:
[1] 唐瑞明,譚倩芳.高校宿舍信息化管理系統(tǒng)設(shè)計 [J].電子技術(shù)與軟件工程,2023(4):258-262.
[2] 陳斐,吳林韓,張朝陽,等.智慧宿舍管理系統(tǒng)設(shè)計與實現(xiàn) [J].信息技術(shù)與信息化,2023(12):142-147.
[3] 陳霖.應(yīng)用匈牙利算法實現(xiàn)宿舍分配的宿舍管理系統(tǒng) [D].南昌:江西師范大學(xué),2023.
[4] 蘇世雄,劉洲洲,李川,等.基于STM32的高校智能宿舍系統(tǒng)研究與設(shè)計 [J].自動化與儀器儀表,2023(4):215-219.
[5] 蔣晟,陳科.基于SpringBoot的學(xué)生宿舍管理系統(tǒng)的設(shè)計與實現(xiàn) [J].現(xiàn)代信息科技,2021,5(12):6-9.
[6] 譚彥.基于Django的農(nóng)產(chǎn)品電子商城系統(tǒng)設(shè)計與實現(xiàn) [J].現(xiàn)代信息科技,2024,8(10):92-95.
[7] 周文藝,李永可,余恩.基于微信小程序的大田農(nóng)事管理系統(tǒng) [J].計算機技術(shù)與發(fā)展,2024,34(10):213-220.
[8] 牛作東,李捍東.基于Python與flask工具搭建可高效開發(fā)的實用型MVC框架 [J].計算機技術(shù)與發(fā)展,2019,36(7):21-25.
[9] 李朝陽,周維貴,張小鋒,等.一種麒麟系統(tǒng)下基于Django的網(wǎng)絡(luò)性能管理系統(tǒng)設(shè)計與實現(xiàn) [J].計算機應(yīng)用與軟件,2024,41(3):130-133.
[10] 劉慧梅.多功能便攜式水庫水質(zhì)智能移動監(jiān)測系統(tǒng)設(shè)計與實現(xiàn) [J].微型電腦應(yīng)用,2024,40(5):253-256.
作者簡介:譚彥(1985—),女,漢族,廣西灌陽人,講師,碩士,研究方向:計算機應(yīng)用、物聯(lián)網(wǎng)。
收稿日期:2024-08-26