【博客網(wǎng)站的設(shè)計(jì)與開發(fā)(論文)9100字】_第1頁
【博客網(wǎng)站的設(shè)計(jì)與開發(fā)(論文)9100字】_第2頁
【博客網(wǎng)站的設(shè)計(jì)與開發(fā)(論文)9100字】_第3頁
【博客網(wǎng)站的設(shè)計(jì)與開發(fā)(論文)9100字】_第4頁
【博客網(wǎng)站的設(shè)計(jì)與開發(fā)(論文)9100字】_第5頁
已閱讀5頁,還剩15頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

第1章緒論博客網(wǎng)站的設(shè)計(jì)與開發(fā)目錄7325_WPSOffice_Level1摘要 II7832_WPSOffice_Level1第1章緒論 127070_WPSOffice_Level21.1研究背景 120465_WPSOffice_Level21.2研究的歷史與現(xiàn)狀 130168_WPSOffice_Level21.3選題意義 21.4研究內(nèi)容211343_WPSOffice_Level1第2章相關(guān)技術(shù)概述 315186_WPSOffice_Level22.1Python 313895_WPSOffice_Level22.2Django 42.3Web技術(shù)42.4PyCharm開發(fā)工具52.5Mysql數(shù)據(jù)庫513987_WPSOffice_Level1第3章博客網(wǎng)站的具體實(shí)現(xiàn) 614602_WPSOffice_Level23.1前期準(zhǔn)備工作 63.2用戶的注冊(cè)與登錄724787_WPSOffice_Level23.3博客的發(fā)布 930429_WPSOffice_Level23.4博客的評(píng)論功能 118886_WPSOffice_Level23.5博客的收藏功能 121276_WPSOffice_Level23.6博客的瀏覽功能 1310752_WPSOffice_Level1第4章總結(jié) 1632751_WPSOffice_Level24.1工作總結(jié) 161760_WPSOffice_Level24.2問題總結(jié)及解決方案 1631809_WPSOffice_Level1參考文獻(xiàn) 18博客網(wǎng)站的設(shè)計(jì)與開發(fā)摘要隨著現(xiàn)代社會(huì)科技和網(wǎng)絡(luò)的不斷進(jìn)步,各種新鮮事物屢見不鮮。博客作為當(dāng)今社會(huì)的新鮮事物,受到了越來越多人的關(guān)注和青睞,已經(jīng)成為人們相互交流的一座橋梁。本次畢設(shè)使用了Django框架和Python語言。Django是一個(gè)開發(fā)源代碼的Web應(yīng)用框架,由Python寫成,采用了MVT的框架模式,即模型M,視圖V和模版T,Django具有簡潔、安全、自帶大量常用工具和框架等優(yōu)點(diǎn)。本次畢設(shè)設(shè)計(jì)的博客主要功能有發(fā)布博客、評(píng)論博客、收藏博客、瀏覽博客,可以幫助用戶完成有效和清晰的溝通,簡明又清晰地展示出每個(gè)用戶的想法,讓用戶之間的溝通更加高效,讓用戶的生活更加便利。

關(guān)鍵字:Python;Django;博客

第1章緒論1.1研究背景隨著互聯(lián)網(wǎng)日益發(fā)展和網(wǎng)民規(guī)模的不斷擴(kuò)大,各種新的網(wǎng)絡(luò)互動(dòng)方式充斥著我們的生活。而博客正是一種新的網(wǎng)絡(luò)互動(dòng)方式,它與我們每個(gè)人日常生活、工作和學(xué)習(xí)息息相關(guān)。現(xiàn)如今,許多人都會(huì)使用博客來代替日記本,以此來記錄下自己的生活、心情還有情感,他們也會(huì)在博客上尋找志同道合的網(wǎng)友,然后進(jìn)行親密互動(dòng)。本次畢設(shè)使用的是Django框架,Django是用Python語言寫的開源Web開發(fā)框架(opensourceWebframework),它鼓勵(lì)快速開發(fā),并遵循MVC(模型、視圖、控制器)設(shè)計(jì)[1],同時(shí)具有強(qiáng)大的數(shù)據(jù)庫功能,自帶強(qiáng)大的后臺(tái)管理系統(tǒng)admin和緩存系統(tǒng)。Django的app理念也很優(yōu)秀,它使得開發(fā)網(wǎng)站的時(shí)候更快捷。1.2研究的歷史與現(xiàn)狀電腦這一名詞是二戰(zhàn)時(shí)期產(chǎn)生并延續(xù)下來的,并在冷戰(zhàn)時(shí)期產(chǎn)生了網(wǎng)絡(luò)這一衍生名詞[2]。博客是一種新興的網(wǎng)絡(luò)交流應(yīng)用,它正在極大地影響著我們生活的方方面面。博客為博客做為Weblog的中文意譯,也被理解為中文日志的意思,其取代了較為傳統(tǒng)的網(wǎng)絡(luò)信息交流方式,并逐步發(fā)展成為了當(dāng)今社會(huì)使用最為廣泛且深遠(yuǎn)的一種信息交流及通訊工具,并成為第四代互聯(lián)網(wǎng)交流方式的代表[3]。其產(chǎn)生和發(fā)展主要原因是借助互聯(lián)網(wǎng)平臺(tái)的信息快捷性,使其信息能夠在最短時(shí)間內(nèi)相互流通,并實(shí)現(xiàn)信息交流的豐富性,可使人與人之間的交流既輕松又緊密。通過這個(gè)平臺(tái),每個(gè)人都可以將自己平時(shí)感受與心得、和對(duì)于各種東西或者事物不一樣的看法和見解傳遞給別人。為了能夠更專業(yè)且合理地利用博客,其內(nèi)容被分為了很多種類,比較最常見的有知識(shí)庫博客、小組博客、協(xié)作式博客等等[4]。其中企業(yè)博客網(wǎng)是一種融入了企業(yè)經(jīng)濟(jì)的發(fā)展需求以及博客技術(shù)更新的新興網(wǎng)站。企業(yè)博客網(wǎng)做為一種獨(dú)具創(chuàng)新性的博客,相對(duì)于較為傳統(tǒng)的電子商務(wù)模式,其在發(fā)展宣傳以及企業(yè)推銷各方面具有更強(qiáng)的競爭力。與此同時(shí),企業(yè)用戶還可以將各人較為成功的案例和企業(yè)發(fā)展經(jīng)歷整合發(fā)布到企業(yè)博客當(dāng)中,通過這個(gè)平臺(tái)更好地宣傳和推廣本企業(yè)的產(chǎn)品和服務(wù),為企業(yè)或者商人服務(wù)[5-7]。在博客的發(fā)展實(shí)踐應(yīng)用中,其影響力的越來越大,博客也漸漸發(fā)展成為具備了更加深層次的傳播平臺(tái)[8]。在博客里,用戶可將自己需求的任何資源進(jìn)行發(fā)布求助,也可同步將自己所持有的有效資源進(jìn)行發(fā)布,這樣在平臺(tái)上就可實(shí)現(xiàn)資源的互相分享使用,使每個(gè)人的資源的利用率最大化和價(jià)值最高化。博客就是在這種資源互相分享使用過程中實(shí)現(xiàn)了人類的進(jìn)步與發(fā)展[9]。同時(shí)博客可上傳的內(nèi)容沒有資料內(nèi)容大小以及題材類型的限制,比較自由無太大的約束性,并且在任何時(shí)間以及任何地點(diǎn)都可以完成上傳,無太多局限性的影響[10]。博客的發(fā)展史,可以大致分為以下三個(gè)階段:一般學(xué)者認(rèn)為是其萌芽期的時(shí)期一般在民國九十年代中期至民國九十年代末期。說到博客的起源,對(duì)于現(xiàn)而今的我們來說已經(jīng)沒有辦法考證,但是被人們廣泛接受的一個(gè)說法是起源于一家小型軟件公司Pyra的三位創(chuàng)始者為了開發(fā)某個(gè)產(chǎn)品而編寫的一個(gè)小工具,來為他們之間的溝通合作帶來便利。后來,這個(gè)小工具被他的開發(fā)者免費(fèi)發(fā)布到了網(wǎng)上。然而正是這一無心之舉,受到了各IT技術(shù)人員,網(wǎng)站設(shè)計(jì)人員以及新聞愛好人員的熱捧。博客也因此進(jìn)入了公眾的視線。崛起階段主要在二十一世紀(jì)最初的五六年間,在這期間博客迅速地興起。而造成這一現(xiàn)象的主要原因還是當(dāng)時(shí)的一場恐怖襲擊,美國911事件。然而諸如《紐約時(shí)報(bào)》等主流媒體并不能完全真實(shí)又全面地反映出當(dāng)時(shí)的情況。反而是當(dāng)時(shí)許多普普通通的博客真實(shí)全面地反映出了當(dāng)時(shí)真正的情況以及人們地感受,因?yàn)樗麄兪亲钭罹哂邪l(fā)言權(quán)的幸存者。發(fā)展階段應(yīng)該可以算是在2006年之后,博客已經(jīng)被大眾廣泛接受。人們已經(jīng)習(xí)慣以這種便利高效的交流方式去與人溝通互動(dòng)。現(xiàn)在博客已經(jīng)成為我們?nèi)粘I畹囊徊糠至恕?.3選題意義博客是一個(gè)可供用戶進(jìn)行密切交流的社群內(nèi)共享平臺(tái),可以加強(qiáng)用戶之間的相互了解。例如,用戶們可以在此平臺(tái)分享各種經(jīng)驗(yàn),也可以分享學(xué)習(xí)心得,雙方就能及時(shí)了解各自的學(xué)習(xí)情況等。此外,該網(wǎng)站還有助于展示出各個(gè)用戶的日常生活和心情,營造出良好、和諧的上網(wǎng)氛圍,打破用戶之間的情感和信息壁壘,真正促進(jìn)各用戶之間的情感交流。所以將博客廣泛應(yīng)用起來,為用戶的交流和分享提供一個(gè)更加便利的公共平臺(tái)是很有必要的,也是很有意義的。1.4研究內(nèi)容本次畢設(shè)主要研究用Django框架和Python語言開發(fā)的一個(gè)博客網(wǎng)站,有發(fā)布博客、評(píng)論博客、收藏博客、點(diǎn)贊博客、瀏覽博客五大功能。論文的結(jié)構(gòu)安排如下:第一章:緒論,詳細(xì)論述了博客網(wǎng)站的背景以及歷史與現(xiàn)狀,闡述本文的研究內(nèi)容。第二章:相關(guān)技術(shù)概述,詳細(xì)論述了本次畢業(yè)設(shè)計(jì)需要用到的相關(guān)技術(shù),包括Python語言、Django框架和Web技術(shù)。第三章:博客網(wǎng)站的具體實(shí)現(xiàn),具體論述了搭建博客網(wǎng)站的前期準(zhǔn)備工作,詳細(xì)介紹了博客的發(fā)布、評(píng)論、收藏以及瀏覽這四大功能。第四章:總結(jié),主要總結(jié)了本次設(shè)計(jì)的工作內(nèi)容、在設(shè)計(jì)中得到的感悟和需要改善提升的地方,以及在本次設(shè)計(jì)中遇到的困難并解決困難的方法。第2章相關(guān)技術(shù)概述第2章相關(guān)技術(shù)概述2.1PythonPython語言已經(jīng)從問世到如今已有30多年歷史,并且已經(jīng)發(fā)展成為美國大學(xué)中使用最多且廣泛流行的一種適合進(jìn)行程序設(shè)計(jì)的語言。在我們?nèi)粘=虒W(xué)過程中,Python主要會(huì)包含分支、循環(huán)、函數(shù)等一些最基礎(chǔ)的邏輯關(guān)系,還會(huì)有一些很多的具有非常強(qiáng)大功能的函數(shù)庫,可以應(yīng)用到我們的編程中來。其作為一種通用編程語言正在逐步發(fā)展形成為與自然界最接近的語言[11]。Python語言作為一種腳本語言,可通過運(yùn)行源代碼來直接執(zhí)行。相較于其他語言,Python語言更容易入門學(xué)習(xí)、可讀性較強(qiáng),它輕語法、弱類型,不僅可擴(kuò)展性高,而且也不需要定義變量,更加沒有指針、地址等元素存在。Python語言能夠?qū)⒏黝悊栴}進(jìn)行抽象化,并在抽象化的基礎(chǔ)上將問題的求解進(jìn)行自動(dòng)化,使其完美解決問題。這種能力使其在計(jì)算機(jī)領(lǐng)域里成為解決復(fù)雜信息問題的最直觀最有效的工具。Python與語言對(duì)于開發(fā)者來說是一種很開放很簡單簡潔的語言,擁有極其開源的解釋器,并且開源協(xié)議收到極其少的限制,使用該語言編寫的所有代碼均在我們國家信息安全要求的"自主可控"范圍內(nèi)?;赑ython語言的入門容易實(shí)用性強(qiáng)的特點(diǎn)以及開源庫極其地豐富多彩,對(duì)于廣大學(xué)生來說,會(huì)對(duì)數(shù)據(jù)庫擁有全新多彩的認(rèn)識(shí),學(xué)生就不會(huì)有學(xué)不好編程的想法,而且這種開源庫非常有助于學(xué)生去學(xué)好學(xué)精一門編程語言,進(jìn)而使用該計(jì)算機(jī)語言更好地幫助學(xué)生處理面對(duì)的各種疑難問題。Python語言是一種非常高效的編程語言,能夠使得編程速率加快,提高程序員的編程效率,節(jié)省寶貴的時(shí)間,也可以減少錯(cuò)誤幾率,加快公司各自的產(chǎn)品的上市時(shí)間,使人均生產(chǎn)效率能夠得到顯著提高。在短短的計(jì)算機(jī)歷史上已出現(xiàn)過超過200種的編程語言,但至今仍常使用的語言卻已不超過20余種。Python語言作為當(dāng)今各種計(jì)算機(jī)應(yīng)用領(lǐng)域常見的通用編程語言之一,說明其能夠擁有強(qiáng)大的技術(shù)生命力和延續(xù)能力,這種技術(shù)能力的主要來源是Python擁有的前瞻的技術(shù)性和先進(jìn)的時(shí)代性,其主要體現(xiàn)在以下三個(gè)方面,總結(jié)如下:第一,在于Python語言自身,Python語言主要優(yōu)點(diǎn)就是簡潔方便,抽象程度很高,對(duì)編程人員來說編寫效率很高,這些優(yōu)秀的設(shè)計(jì)方法都很符合先進(jìn)的時(shí)代性。第二,Python語言的體系是開源開放式的[12]。目前,世界上已知最大的針對(duì)單一編程語言所形成的開放社區(qū)是圍繞Python語言建立的,截至2015年11月,Python語言的開放社區(qū)總計(jì)已提供了超過68956個(gè)函數(shù)庫,其內(nèi)容已涵蓋了大多數(shù)的信息技術(shù)領(lǐng)域。而且該開放社區(qū)中的函數(shù)庫的編寫質(zhì)量非常高,且都為開源形式,并且可開放,為Python語言的編寫提供了非常便利的方法,也給廣大編程學(xué)習(xí)者提供了很好的學(xué)習(xí)平臺(tái),這種開源開方式形式使得計(jì)算機(jī)語言能夠飛速發(fā)展[13]。第三,Python語言的發(fā)展帶來了更廣闊的就業(yè)前景。Python語言還擁有可移植性和跨平臺(tái)性。Python語言系統(tǒng)還可以增強(qiáng)服務(wù)器的適應(yīng)性,使得服務(wù)器可以在不更換操作系統(tǒng)的情況下,還能在原有的服務(wù)器上運(yùn)行。如果一段代碼需要快速運(yùn)行或?qū)⑵潆[藏,可將其先使用其他編程語言編寫,再使用Python語言。2.2DjangoDjango是本次畢設(shè)中所使用的Web框架,是一個(gè)由Python編寫而成并具有開放源代碼的Web應(yīng)用框架[14]。Django遵循MVC框架,MVC框架可以在用戶交互信息和改進(jìn)界面的同時(shí),不需要再編寫新的業(yè)務(wù)邏輯,其核心思想是解耦。MVC框架是一種針對(duì)所有語言的設(shè)計(jì)模式,模塊之間相互獨(dú)立,但是對(duì)于Django來說,它采用了MTV框架模式,即模型(Model)、模版(Template)和視圖(Views),MTV框架模式和MVC框架模式本質(zhì)上沒有什么差別,各組件之間也保持著松耦合的關(guān)系,但是它們?cè)诙x上有些許區(qū)別。模型、視圖、模版各自的職責(zé)如下:Model模型,這個(gè)模塊負(fù)責(zé)業(yè)務(wù)對(duì)象與數(shù)據(jù)庫的對(duì)象,用于存取管理數(shù)據(jù),解決和數(shù)據(jù)相關(guān)的一切問題。View視圖,這個(gè)模塊負(fù)責(zé)業(yè)務(wù)邏輯,并在適當(dāng)時(shí)候調(diào)用模版和模型,它決定了如何表現(xiàn)數(shù)據(jù),我們需要在模塊中顯示哪些數(shù)據(jù),怎么顯示,就是由視圖決定的。Template模版,這個(gè)模塊負(fù)責(zé)如何把頁面展示給用戶。除了上述的三個(gè)模塊以外,Django中還有一個(gè)URL分發(fā)器,它的作用是將不同的URL的頁面請(qǐng)求分發(fā)給不同的視圖處理,視圖再調(diào)用相應(yīng)的模版和模型。由此可知,Django的工作機(jī)制可以歸納為以下幾個(gè)步驟:用戶先在網(wǎng)站的頁面中選擇輸入url網(wǎng)址,通過URL控制器接收,再根據(jù)url網(wǎng)址來匹配一個(gè)相應(yīng)的視圖函數(shù),模型從一個(gè)數(shù)據(jù)庫中提取出相關(guān)的數(shù)據(jù)后,將其返回到相應(yīng)的視圖,視圖再把所有需要顯示的信息和數(shù)據(jù)都返回到相應(yīng)的模板,渲染模板,此時(shí)的模板就是html文件。2.3Web技術(shù)Web技術(shù)是一種可以給我們用戶提供突破時(shí)間空間的局限、并進(jìn)行各種信息交流的互動(dòng)互助平臺(tái),其作用能夠使得用戶無論何時(shí)何處,都能夠通過網(wǎng)絡(luò)平臺(tái)共享全社會(huì)的智慧[15]。Web這個(gè)名詞,其原有的意思是指蜘蛛網(wǎng)或者網(wǎng)的意思,但在網(wǎng)頁設(shè)計(jì)中它被稱之為網(wǎng)頁。時(shí)代技術(shù)在快速進(jìn)步與不斷發(fā)展,名詞意思也被充分解讀,現(xiàn)在Web被人們翻譯成為網(wǎng)或網(wǎng)絡(luò)的意思。WEB技術(shù)指代的是開發(fā)互聯(lián)網(wǎng)應(yīng)用的技術(shù)總稱,一般來說它包括WEB服務(wù)端技術(shù)和WEB客戶端技術(shù)。Web\t"/item/web%E6%8A%80%E6%9C%AF/_blank"服務(wù)端的開發(fā)技術(shù)是由靜態(tài)向動(dòng)態(tài)逐漸發(fā)展和完善起來的。Web\t"/item/web%E6%8A%80%E6%9C%AF/_blank"客戶端的最主要的任務(wù)就是展現(xiàn)信息的內(nèi)容。2.4PyCharm開發(fā)工具PyCharm開發(fā)工具是當(dāng)今社會(huì)最熱門、最主流的python語言開發(fā)工具之一。其作為開發(fā)工具主要功能包括編碼協(xié)助和項(xiàng)目代碼導(dǎo)航等,PyCharm還有一個(gè)編碼補(bǔ)全的功能,是一個(gè)可以進(jìn)行代碼折疊和分割窗口的多元化多功能編輯器,能夠有效提升開發(fā)人員的工作效率和開發(fā)體驗(yàn)。Pycharm還還可以支持GoogleAppEngine和IronPython,上面這些功能都非常實(shí)用[16]。PyCharm中可以使用JavaScript,HTML和CSS編輯器,因?yàn)檫@個(gè)優(yōu)點(diǎn),開發(fā)人員使用Django進(jìn)行網(wǎng)站搭建的效率可以明顯提高[17]。2.5Mysql數(shù)據(jù)庫在這個(gè)互聯(lián)網(wǎng)高速發(fā)展,信息化技術(shù)飛快提高的時(shí)代,Web系統(tǒng)已經(jīng)得到了很好的遍及,這也使得Web系統(tǒng)的后臺(tái)數(shù)據(jù)庫能夠迅猛飛快地發(fā)展起來。MySQL是一個(gè)關(guān)系型數(shù)據(jù)庫管理系統(tǒng),它是由瑞典的一家公司——MySQLAB研究出來的。MySQL是當(dāng)今社會(huì)中最普遍、最流行、最現(xiàn)代的關(guān)系型數(shù)據(jù)庫管理系統(tǒng)其中之一,在WEB應(yīng)用方面,MySQL是最具有特色且最優(yōu)秀的

RDBMS

(應(yīng)用軟件之一[18],它具有體積小但是速度快,不僅可以開放源代碼,而且還能支持多線程和多用戶等諸多優(yōu)點(diǎn)。鑒于這些優(yōu)點(diǎn),Mysql數(shù)據(jù)庫現(xiàn)如今已經(jīng)變成了企業(yè)應(yīng)用的后臺(tái)數(shù)據(jù)庫的首要選擇。因此,Mysql數(shù)據(jù)庫的安全性對(duì)于企業(yè)來說也是很重要的。MySQL這是一種基于關(guān)系型的數(shù)據(jù)庫管理系統(tǒng),它會(huì)把不同的各種數(shù)據(jù)保存在不同的表中,而不會(huì)去把所有的數(shù)據(jù)全部直接存儲(chǔ)存放到同一個(gè)巨型倉庫里面,以此種方式來為其使用增加數(shù)據(jù)和提高管理效率,并且大大提高其使用靈活性[19]。近些年來,國內(nèi)有關(guān)分布式存儲(chǔ)的研究逐漸多了起來,某些大型互聯(lián)網(wǎng)公司也會(huì)根據(jù)自身的需求在一些開源軟件的基礎(chǔ)上開發(fā)出專屬于自己的分布式文件系統(tǒng)和分布式數(shù)據(jù)庫,例如阿里巴巴公司的TaobaoFileSystem(TFS)[20]。第3章博客網(wǎng)站的具體實(shí)現(xiàn)第3章博客網(wǎng)站的具體實(shí)現(xiàn)3.1前期準(zhǔn)備工作本次畢設(shè)我使用的是Python3.9版本,Django2.0.3版本。它們使用的運(yùn)行環(huán)境為Windows10,系統(tǒng)位數(shù)64位。首先我去Python的官網(wǎng)上面下載了最新版的Python3.9,將此安裝完成以后就進(jìn)行的path環(huán)境的配置,環(huán)境配置完畢后再檢查是否成功安裝上了Python。再下載一個(gè)集成化的開發(fā)環(huán)境(IDE):Pycharm,這是目前比較流行的Python開發(fā)工具之一,其主要功能有:編碼協(xié)助和項(xiàng)目代碼導(dǎo)航等,顯著提高了開發(fā)人員的工作效率和工作體驗(yàn),還可以使用JavaScript、HTML和CSS編輯器,這使得開發(fā)人員使用Django開發(fā)網(wǎng)站的效率明顯提高。接著,我們使用pip來安裝Django。首先,進(jìn)入cmd,將pipinstallDjango==2.0.3輸入進(jìn)運(yùn)行框,然后我們要做的工作就是驗(yàn)證是否將Django安裝成功,我們進(jìn)入Python環(huán)境,然后輸入importdjango,如果顯示django.get_version()‘3.1.7’則表明Django安裝成功了。Django可以讓用戶更加簡便高效地開發(fā)出一個(gè)數(shù)據(jù)庫驅(qū)動(dòng)的網(wǎng)站,它強(qiáng)調(diào)代碼復(fù)用,還有很多功能強(qiáng)大的第三方插件可供使用,這些插件賦予Django框架高度的可擴(kuò)展性。至此,我們的編程環(huán)境已經(jīng)準(zhǔn)備完畢了。接下來就是開始編程的步驟了,如下:首先,把一個(gè)項(xiàng)目與博客應(yīng)用創(chuàng)建起來。打開cmd,再打開Python目錄,然后使用Django命令,將mysite目錄創(chuàng)建:>django-adminstartprojectmysite切換進(jìn)mysite目錄:>cdmysite開始一個(gè)新的blogapp:pythonmanage.pystartappblog建立完新的blogapp以后,我們?cè)賹logapp添加到setting.py中。接著,我們?cè)侔補(bǔ)dmin數(shù)據(jù)庫初始化。Django默認(rèn)使用的數(shù)據(jù)庫是SQlite3,而這個(gè)數(shù)據(jù)庫是Python自帶的,我們只需要在setting.py文件中設(shè)置一下即可使用。接著,我們打開cmd命令框,來執(zhí)行一下pythonmanage.py命令,然后我們只需要等待系統(tǒng)自動(dòng)完成數(shù)據(jù)庫的同步,就可以通過創(chuàng)建表單來儲(chǔ)存數(shù)據(jù)了。數(shù)據(jù)庫完成同步以后,即可創(chuàng)建一個(gè)superuser(即超級(jí)管理員)賬號(hào),這可以方便我們登錄到后臺(tái),管理一些操作。在我們創(chuàng)建完superuser超級(jí)管理員賬號(hào)以后,就可以用這個(gè)賬號(hào)來登錄到網(wǎng)頁的后臺(tái)了,在這個(gè)后臺(tái)里面我們能看到很多集成的模塊,這些集成的模塊可供我們進(jìn)行簡單的刪改操作。最后,我們可以把Django自帶的web打開出來,執(zhí)行命令:D:\python\mysite>pythonmanage.pyrunserver接下來通過瀏覽器啟動(dòng)訪問:8000,就可以啟動(dòng)Django自帶的Web,我們還可以使用:8000/admin

來訪問啟動(dòng)后臺(tái)。Django擁有自帶的后臺(tái)管理系統(tǒng),因此我們不需要額外創(chuàng)建后臺(tái),省去了很多麻煩的步驟,搭建網(wǎng)站非常方便快捷。至此,搭建博客網(wǎng)站的前期準(zhǔn)備工作已經(jīng)基本完成。3.2用戶的注冊(cè)與登錄頁面展示用戶的登錄是博客最直接的功能,用戶可以創(chuàng)建注冊(cè)一個(gè)賬號(hào),這樣可以使用更多的功能。圖3.1用戶的注冊(cè)界面圖3.2用戶的登錄界面圖3.3用戶信息編輯頁面首先我們輸入用戶名和密碼,來登錄博客網(wǎng)頁,用戶名和密碼要和數(shù)據(jù)庫信息進(jìn)行核對(duì),以此來確保登錄的安全性。本系統(tǒng)的設(shè)計(jì)也相對(duì)友好,當(dāng)密碼輸入錯(cuò)誤時(shí),也會(huì)有相應(yīng)的提醒。在用戶注冊(cè)的過程中,用戶名也不可和別人相同,密碼長度必須大于等于六位,并且郵箱賬號(hào)必須使用正確的格式。此次畢設(shè)的用戶注銷功能使用了較為簡潔的設(shè)計(jì),主要是通過清除頁面上的緩存來達(dá)到注銷賬戶的目的,這樣也可以保證用戶的上網(wǎng)安全。這次畢設(shè)還可以編輯用戶信息,這可以增強(qiáng)系統(tǒng)的可用性,讓用戶擁有更好的體驗(yàn)。其主要邏輯就是可以對(duì)用戶輸入的信息進(jìn)行規(guī)范性檢測,當(dāng)用戶輸入符合邏輯的信息時(shí),即可編輯成功,若不符合即編輯失敗,信息仍舊是原來的。以下代碼為主要代碼的展示:3.3博客的發(fā)布(1)頁面展示博客的發(fā)布功能是博客最核心的功能,用戶可以在此頁面記錄下自己的生活、情感以及心情。用戶在直接點(diǎn)擊"寫文章"的按鈕后,就可以直接跳轉(zhuǎn)進(jìn)入到自己的發(fā)布頁面,在發(fā)布頁寫下相應(yīng)內(nèi)容,點(diǎn)擊“提交”按鈕,這篇文章即可發(fā)布成功。點(diǎn)擊“寫文章”圖3.4寫博客界面圖3.5編輯后的文章內(nèi)容主要設(shè)計(jì)博客的發(fā)布功能是必要功能,在本次畢設(shè)中,博客發(fā)布功能包含標(biāo)題、簡介、話題、封面圖片、主要內(nèi)容這五大主題。話題是可以自己選擇的,圖片可以讓文章看起來更加生動(dòng)形象,文章內(nèi)容的長短可以自己隨意選擇,用戶也可以自己編輯文章的樣式,這些操作均可以使得文章看起來更加醒目以及簡潔易懂。以下代碼為主要代碼的展示:3.4博客的評(píng)論功能(1)頁面展示博客的一大特色功能就是評(píng)論功能,這可以促進(jìn)用戶之間的交流,使用戶能有更好的體驗(yàn)。你可以選擇一篇想要評(píng)論的文章,然后點(diǎn)擊評(píng)論按鈕,頁面即可進(jìn)行跳轉(zhuǎn),在評(píng)論文本框中即可進(jìn)行文字輸入。還有一點(diǎn),這個(gè)博客網(wǎng)站還可以直觀地顯示出評(píng)論的個(gè)數(shù),可供用戶查看。圖3.6選擇一個(gè)要評(píng)論的博客點(diǎn)擊圖片中的評(píng)論按鈕,組織好想要評(píng)論的語言。這里要強(qiáng)調(diào)的就是任何人都可以評(píng)論任何的博客,用戶也可以評(píng)論自己的博客,這是符合真實(shí)需求的功能。評(píng)論如下圖所示:圖3.7評(píng)論框圖3.8評(píng)論展示⑵主要設(shè)計(jì)博客的評(píng)論功能是一種用戶交互的主要舉措,在博客制作過程中比較復(fù)雜,涉及到了很多方面,例如:評(píng)論的用戶、評(píng)論的時(shí)間以及評(píng)論的內(nèi)容。其邏輯雖然比較簡單,但是設(shè)計(jì)起來還是有些麻煩的。在本次博客網(wǎng)站設(shè)計(jì)的過程中,根據(jù)數(shù)據(jù)庫的規(guī)范我對(duì)評(píng)論表進(jìn)行了設(shè)計(jì),并在界面設(shè)計(jì)了簡潔的人機(jī)交互模式。3.5博客的收藏功能(1)頁面展示我們?cè)跒g覽博客的時(shí)候,總是會(huì)遇到喜歡的文章,能引起讀者的共鳴,我們就會(huì)想要把它們收藏下來,以便日后能夠再次查看。所以本次畢設(shè)中,我還設(shè)計(jì)了收藏文章的功能。在我們?yōu)g覽博客界面的時(shí)候,只需要點(diǎn)擊收藏按鈕,即可對(duì)喜歡的文章進(jìn)行收藏,頁面也不需要跳轉(zhuǎn)。在博客網(wǎng)站頁面我們還可以看到收藏的個(gè)數(shù)。在博客網(wǎng)站中,我還設(shè)計(jì)了一個(gè)踩一踩功能,這是用戶針對(duì)一些不喜歡的、覺得寫的不好的文章使用的功能,其設(shè)計(jì)類似收藏功能。同時(shí)還有一個(gè)很實(shí)用的功能,可以在我的主頁看到我們收藏的文章。圖3.9包含收藏按鈕的界面點(diǎn)擊收藏按鈕之后,收藏次數(shù)從0變成了1,如下圖所示:圖3.10收藏完成主要設(shè)計(jì)在此次畢設(shè)中,收藏功能是最實(shí)用也是最人性化的,它可以讓我們把喜歡的文章收藏下來,在下次想查閱時(shí)立即查到,節(jié)省了我們的時(shí)間,也提高了效率。它的邏輯設(shè)計(jì)較為簡單,選擇收藏的特定的文章對(duì)其進(jìn)行計(jì)數(shù),并且關(guān)聯(lián)到收藏用戶即可。3.6博客的瀏覽(1)頁面展示博客的瀏覽功能是使用博客最主要最重要的一個(gè)功能。對(duì)于不同的用戶肯定有不同的需求,所以,本次畢設(shè)設(shè)計(jì)了兩種瀏覽的情況。如果你沒有登錄賬號(hào),那只能對(duì)博客文章進(jìn)行瀏覽,你也可以按照主題,選擇相應(yīng)的主題對(duì)所有文章進(jìn)行瀏覽,但是不能使用其他功能。當(dāng)你登錄系統(tǒng)之后,你就可以使用本系統(tǒng)擁有的所有功能,你不僅可以瀏覽首頁,瀏覽對(duì)應(yīng)話題的博客,還可以瀏覽我的博客。主要的操作較為簡單,均是點(diǎn)擊操作即可。圖3.11首頁瀏覽圖3.12我的主頁瀏覽(2)主要設(shè)計(jì)在本部分的設(shè)計(jì)中,雖然顯示的頁面較多,但是頁面的設(shè)計(jì)還是較為簡潔的。首先我們需要考慮的就是讀取數(shù)據(jù)庫中信息,然后需要考慮在頁面上對(duì)數(shù)據(jù)進(jìn)行分頁展示。其用到的方法較為基礎(chǔ),也比較常用,但是需要我們極其耐心。這部分的整體邏輯還是較為簡單的。以下代碼為主要代碼的展示:第4章總結(jié)第4章總結(jié)4.1工作總結(jié)到目前為止,博客的設(shè)計(jì)開發(fā)已經(jīng)全部完成。本次畢設(shè)耗時(shí)四個(gè)月,在老師的幫助下完成。該畢設(shè)使用Django框架、Python語言以及html網(wǎng)頁設(shè)計(jì)開發(fā)出了一個(gè)簡易的博客網(wǎng)站,涵蓋了博客的大部分功能,發(fā)表、評(píng)論、收藏、點(diǎn)贊、瀏覽功能均可以正常運(yùn)行。此次畢設(shè)我運(yùn)用的研究方法有以下七個(gè):1.創(chuàng)建一個(gè)項(xiàng)目2.配置數(shù)據(jù)庫3.創(chuàng)建應(yīng)用4.創(chuàng)建數(shù)據(jù)模型Model.py5.創(chuàng)建視圖View.py6.創(chuàng)建模板7.URL映射。博客的第一個(gè)功能是增添刪改文章,我們先是通過創(chuàng)建模塊,再定義視圖函數(shù)和url地址,最后就可以編寫模塊,呈現(xiàn)出最終網(wǎng)頁。第二個(gè)功能是博客的評(píng)論功能,這個(gè)功能可以讓人與人之間的交流更加密切,為用戶提供了良好的上網(wǎng)體驗(yàn)。第三個(gè)功能是微薄的收藏功能,這個(gè)功能非常具有實(shí)用性,可以為用戶提供便利,當(dāng)用戶非常喜歡或者欣賞某一篇博客時(shí),即可將它收藏,以便再次查閱。本博客網(wǎng)站可以幫助用戶簡單記錄自己的心情,豐富自己的生活,幫助用戶之間進(jìn)行高效地交流。通過這次畢設(shè),我感受到了Python語言相比其他語言更加簡單易學(xué),用Django設(shè)計(jì)網(wǎng)站更加簡易方便,也夯實(shí)了書本上學(xué)習(xí)到的知識(shí),熟悉了軟件整體的開發(fā)流程。4.2問題總結(jié)及解決方案在這次畢業(yè)設(shè)計(jì)過程中,我遇到了很多難題。但是在老師和同學(xué)的幫助下,再自己搜索資料,解決了這些問題。我遇到的問題如下:安裝Python失敗,排查了一下原因,是由于安裝Python時(shí)未勾選配置path環(huán)境變量,重新在官網(wǎng)安裝Python后用cmd判斷,顯示安裝成功。安裝Django失敗,排查了一下原因,是由于使用pip安裝Django時(shí),未安裝與Python版本匹配的Django,重新安裝與Python匹配的Django版本后成功在Python中importDjango模塊。設(shè)計(jì)模型完成后,同步數(shù)據(jù)庫不成功。通過排錯(cuò),發(fā)現(xiàn)模型設(shè)計(jì)語法出錯(cuò)。改正后成功同步。最后運(yùn)行出現(xiàn)問題,啟動(dòng)Django服務(wù)時(shí)候出現(xiàn)“Error:[WinError10013]以一種訪問權(quán)限不允許的方式做了一個(gè)訪問套接字的嘗試”,經(jīng)排查和搜索資料,發(fā)現(xiàn)時(shí)8000端口被網(wǎng)易云音樂占用了,因?yàn)橄到y(tǒng)默認(rèn)啟動(dòng)的服務(wù)端口時(shí)8000,所以只需要啟動(dòng)時(shí)修改該端口即可,或者直接將網(wǎng)易云音樂卸載,再重新安裝即可避免此問題。在做這次畢設(shè)之前,我對(duì)Python語言的知識(shí)學(xué)的較淺,只是通過書本了解到一些知識(shí)。但通過這次實(shí)踐操作,遇到難題時(shí)詢問老師,查閱資料,讓我對(duì)Python語言有了一個(gè)系統(tǒng)的認(rèn)識(shí)。至于Django框架,在此之前我是從未接觸過的,不過通過這四個(gè)月的學(xué)習(xí),我對(duì)Django框架也有了一個(gè)全新的認(rèn)識(shí)。這次畢設(shè)增強(qiáng)了我主動(dòng)學(xué)習(xí)的能力,也讓我學(xué)到了一些解決問題的方法,夯實(shí)了書本知識(shí),提高了實(shí)踐能力。雖然過程有些困難,但是在我不懈努力之下,終于圓滿完成了本次畢業(yè)設(shè)計(jì)。

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論