摘要:創(chuàng)建在中的一個(gè)代表一個(gè)功能模塊。就是項(xiàng)目的基石,因此開(kāi)發(fā)博客的第一步就是創(chuàng)建新的,用來(lái)實(shí)現(xiàn)跟文章相關(guān)的功能模塊。注意之后,的必須配置,否則會(huì)報(bào)錯(cuò)??偨Y(jié)本章創(chuàng)建了博客文章功能的,學(xué)習(xí)了注冊(cè)并配置。
創(chuàng)建APP
在Django中的一個(gè)app代表一個(gè)功能模塊。開(kāi)發(fā)者可以將不同功能的模塊放在不同的app中, 方便代碼的復(fù)用。app就是項(xiàng)目的基石,因此開(kāi)發(fā)博客的第一步就是創(chuàng)建新的app,用來(lái)實(shí)現(xiàn)跟文章相關(guān)的功能模塊。
打開(kāi)命令行,進(jìn)入項(xiàng)目所在的目錄:(注意Django的操作必須在虛擬環(huán)境下進(jìn)行)
E:>cd django_project E:django_project>
進(jìn)入虛擬環(huán)境(忘記進(jìn)入venv方法的看這里: 在Windows中搭建Django的開(kāi)發(fā)環(huán)境):
E:django_project> envScriptsactivate.bat (env) E:>
看到盤(pán)符前有(env)標(biāo)識(shí)則表示進(jìn)入虛擬環(huán)境成功。
輸入python manage.py startapp article指令,創(chuàng)建名為article的app:
(env) E:django_projectmy_blog>python manage.py startapp article
查看一下my_blog文件夾,應(yīng)該看到這樣的結(jié)構(gòu):
my_blog │ db.sqlite3 │ manage.py │ ├─article │ │ admin.py │ │ apps.py │ │ models.py │ │ tests.py │ │ views.py │ │ __init__.py │ │ │ └─migrations │ __init__.py │ └─my_blog │ settings.py │ urls.py │ wsgi.py └─ __init__.py
其中article文件夾就是剛創(chuàng)建出來(lái)的app,用來(lái)放置博客文章相關(guān)的代碼。
注冊(cè)APP(settings)接著我們需要修改項(xiàng)目配置文件,“告訴”Django現(xiàn)在有article這么一個(gè)app了。
打開(kāi)根目錄的settings.py,找到INSTALLED_APPS寫(xiě)入如下代碼:
settings.py/ INSTALLED_APPS = [ # 其他代碼 ... # 新增"article"代碼,激活app "article", ]配置訪問(wèn)路徑(urls)
然后再給app配置訪問(wèn)路徑url。
url可以理解為訪問(wèn)網(wǎng)站時(shí)輸入的網(wǎng)址鏈接,配置好url后Django才知道怎樣定位app。
打開(kāi)根目錄下的urls.py,增加以下代碼:
urls.py/ from django.contrib import admin # 記得引入include from django.urls import path, include # 存放映射關(guān)系的列表 urlpatterns = [ path("admin/", admin.site.urls), # 新增代碼,配置app的url path("article/", include("article.urls", namespace="article")), ]
path為Django的路由語(yǔ)法。參數(shù)article/分配了app的訪問(wèn)路徑;include將路徑分發(fā)給下一步處理;namespace可以保證反查到唯一的url,即使不同的app使用了相同的url(后面會(huì)用到)。記得在頂部引入include。
還沒(méi)結(jié)束。現(xiàn)在我們已經(jīng)通過(guò)path將根路徑為article/的訪問(wèn)都分發(fā)給article這個(gè)app去處理。但是app通常有多個(gè)頁(yè)面地址,因此還需要app自己也有一個(gè)路由分發(fā),也就是article.urls了。
在app生成時(shí)并沒(méi)有這個(gè)文件,因此需要自己在article/文件夾中創(chuàng)建urls.py,在里面輸入:
article/urls.py # 引入path from django.urls import path # 正在部署的應(yīng)用的名稱 app_name = "article" urlpatterns = [ # 目前還沒(méi)有urls ]
urlpatterns中暫時(shí)是空的,沒(méi)寫(xiě)入任何路徑的映射,不著急以后會(huì)寫(xiě)。
注意Django2.0之后,app的urls.py必須配置app_name,否則會(huì)報(bào)錯(cuò)。
此時(shí)我們的app就配置完成了。
總結(jié)本章創(chuàng)建了博客文章功能的app,學(xué)習(xí)了注冊(cè)app并配置url。
下一章開(kāi)始編寫(xiě)模型Model,理解Django的數(shù)據(jù)庫(kù)處理。
有疑問(wèn)請(qǐng)?jiān)诙刨惖膫€(gè)人網(wǎng)站留言,我會(huì)盡快回復(fù)。
或Email私信我:[email protected]
項(xiàng)目完整代碼:Django_blog_tutorial
轉(zhuǎn)載請(qǐng)告知作者并注明出處。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/42463.html
摘要:最常見(jiàn)的用法就是存儲(chǔ)用戶的登錄數(shù)據(jù)。如果用戶未登錄,則顯示登錄兩個(gè)字提醒用戶可以點(diǎn)擊登錄。創(chuàng)建文件用戶登錄配置根路由用戶管理配置因?yàn)檫@個(gè)并沒(méi)有改動(dòng),因此不用遷移數(shù)據(jù)??偨Y(jié)本章用到了表單類模板語(yǔ)句用戶驗(yàn)證等知識(shí)完成了用戶管理的登錄和退出。 用戶管理 用戶數(shù)據(jù)可以說(shuō)是大部分網(wǎng)站最重要的資產(chǎn)。用戶管理就是對(duì)用戶數(shù)據(jù)進(jìn)行增刪改查等操作的功能,自然也就非常的重要了。 本章開(kāi)始學(xué)習(xí)用戶管理的內(nèi)容,...
摘要:語(yǔ)法支持再次打開(kāi)文件,在文件的最后添加指明了使用語(yǔ)法標(biāo)記,做了兩個(gè)拓展,其中表示支持語(yǔ)法高亮,包含的特性請(qǐng)參見(jiàn)相關(guān)文檔。語(yǔ)法高亮支持注意這一步必須在安裝完主題之后。 目前網(wǎng)上搭建個(gè)人博客的方案很多,雖然使用諸如 Wordpress ( PHP )、Hexo ( Node.js ) 等可以方便快速地搭建一款功能齊全的高性能個(gè)人博客,但是本文將嘗試一種更為小眾化的方案 —— 一款基于 dj...
摘要:有了文章列表頁(yè)面后,當(dāng)然還需要詳情頁(yè)面,方便用戶對(duì)某一篇感興趣的文章深入閱讀。編寫(xiě)視圖函數(shù)打開(kāi),增加文章詳情頁(yè)面的視圖函數(shù)文章詳情取出相應(yīng)的文章需要傳遞給模板的對(duì)象載入模板,并返回對(duì)象函數(shù)中多了這個(gè)參數(shù)。 有了文章列表頁(yè)面后,當(dāng)然還需要詳情頁(yè)面,方便用戶對(duì)某一篇感興趣的文章深入閱讀。 編寫(xiě)視圖函數(shù) 打開(kāi)article/views.py,增加文章詳情頁(yè)面的視圖函數(shù)article_deta...
摘要:本章講如何幫助健忘癥患者,重置用戶密碼。實(shí)際上不僅內(nèi)置了密碼重置,還包括登錄登出密碼修改等功能??偨Y(jié)本章學(xué)習(xí)了使用第三方庫(kù),高效完成了重置密碼的功能。有疑問(wèn)請(qǐng)?jiān)诙刨惖膫€(gè)人網(wǎng)站留言,我會(huì)盡快回復(fù)。 隨著技術(shù)的發(fā)展,驗(yàn)證用戶身份的手段越來(lái)越多,指紋、面容、聲紋應(yīng)有盡有,但密碼依然是最重要的手段。 互聯(lián)網(wǎng)處處都有密碼的身影,甚至變成了現(xiàn)代人的一種負(fù)擔(dān)。像筆者這樣的,動(dòng)輒幾十個(gè)賬號(hào)密碼,忘記其...
摘要:比較流行的解決方案是允許用戶通過(guò)第三方登錄,即可以通過(guò)微博這類知名社區(qū)的授權(quán),從而登錄你的小站,免去了注冊(cè)的麻煩。微博微信的登錄方式大致都遵循這個(gè)流程本章雖然加載了微博的接口,但是限于篇幅并沒(méi)有配置,請(qǐng)讀者查閱官方文檔去實(shí)現(xiàn)。 現(xiàn)在我們已經(jīng)擁有一個(gè)可以進(jìn)行用戶本地登錄的博客系統(tǒng)了。如果有人欣賞你的文章,說(shuō)不定就會(huì)注冊(cè)成為本地用戶,并和你好好交流一番。 但頭疼的是,用戶可能每天都在互聯(lián)網(wǎng)...
閱讀 2189·2021-11-15 11:36
閱讀 1558·2021-09-23 11:55
閱讀 2520·2021-09-22 15:16
閱讀 2052·2019-08-30 15:45
閱讀 1892·2019-08-29 11:10
閱讀 1054·2019-08-26 13:40
閱讀 942·2019-08-26 10:44
閱讀 3200·2019-08-23 14:55