亚洲熟妇av一区二区三区,久久久久久精品观看sss,免费观看四虎精品国产永久,国产成人精品一区二三区熟女,天堂网在线最新版www资源网

django開(kāi)發(fā)基礎(chǔ)–創(chuàng)建應(yīng)用程序(django 創(chuàng)建應(yīng)用)

概述

前面項(xiàng)目已經(jīng)創(chuàng)建好,網(wǎng)站也有了,所以接下來(lái)要實(shí)現(xiàn)網(wǎng)站的具體功能。在 Django ,人們把這具體的功能稱為“應(yīng)用”( application)

django開(kāi)發(fā)基礎(chǔ)--創(chuàng)建應(yīng)用程序(django 創(chuàng)建應(yīng)用)


創(chuàng)建應(yīng)用

(作用,把相同的東西提取出來(lái)比如文章的標(biāo)題內(nèi)容等這些相同的字段設(shè)置我們可以將他提取出來(lái))

Python manage.py startapp blog

說(shuō)明:

manage.py 這是一個(gè)管理項(xiàng)目的腳本文件,會(huì)在數(shù)據(jù)庫(kù)的遷移等地方使用

python manage.py startapp

python manage.py check 檢查項(xiàng)目是否存在常見(jiàn)問(wèn)題可以加應(yīng)用名

python manage.py runserver 開(kāi)啟服務(wù)器

python manage.py flush 刪除表中所有數(shù)據(jù)

python manage.py migrate將models遷移到數(shù)據(jù)庫(kù)中

python manage.py makemigrations 生成遷移文件 ,要先生成文件,才能遷移

django開(kāi)發(fā)基礎(chǔ)--創(chuàng)建應(yīng)用程序(django 創(chuàng)建應(yīng)用)


應(yīng)用說(shuō)明

從上述代碼中可以看出,執(zhí)行了命令之后,在目錄中多了 blog 如果看看這時(shí)候的目錄結(jié)構(gòu),會(huì)看到 blog 里面已經(jīng)有默認(rèn)的文件和目錄了

django開(kāi)發(fā)基礎(chǔ)--創(chuàng)建應(yīng)用程序(django 創(chuàng)建應(yīng)用)

目錄說(shuō)明:

mysite: 項(xiàng)目的容器。

manage.py: 一個(gè)實(shí)用的命令行工具,可讓你以各種方式與該 Django 項(xiàng)目進(jìn)行交互。

mysite/__init__.py: 一個(gè)空文件,告訴 Python 該目錄是一個(gè) Python 包。

mysite/settings.py: 全局配置文件;包括Django 模塊應(yīng)用配置,數(shù)據(jù)庫(kù)配置,模板配置等。

mysite/urls.py: 路由配置文件。

mysite/wsgi.py: 一個(gè) WSGI 兼容的 Web 服務(wù)器的入口,以便運(yùn)行你的項(xiàng)目。

blog/admin.py :在這個(gè)文件中,可以自定義 Django 管理工具 ,比如設(shè)置在管理界面能夠管理的項(xiàng)目,或者通過(guò)重新自定義與系統(tǒng)管理有關(guān)的類對(duì)象,向管理功能增加新的內(nèi)容

blog/apps.py :這個(gè)文件是djangol.10 之后增加的,通常包含對(duì)應(yīng)用的配置,比如為管理能提供一個(gè)適合的應(yīng)用名稱。

blog/migrations :這是個(gè)目錄,用于存儲(chǔ)應(yīng)用的數(shù)據(jù)庫(kù)表結(jié)構(gòu)的指令,通過(guò)這些指令可以修改和創(chuàng)建數(shù)據(jù)庫(kù),從而在 models.py 模型類和數(shù)據(jù)庫(kù)表之間遷移

blog/models.py :這是應(yīng)用的數(shù)據(jù)模型,每個(gè)Django 應(yīng)用都應(yīng)當(dāng)有一個(gè)models.py 文件,雖然該文件可以為空,但不宜刪除。

blog/tests py:在這個(gè)文件中可以編寫測(cè)試文檔來(lái)測(cè)試所建立的應(yīng)用。

blog/views.py :這是個(gè)重要的文件,用戶保存響應(yīng)各種請(qǐng)求的函數(shù)或者類 如果編寫的是函數(shù),則稱之為基于函數(shù)的視圖:如果編寫的是類,則稱之為基于類的視圖。views.py就是保存函數(shù)或者類的視圖文件。

db.sqlite3:這是個(gè)默認(rèn)的數(shù)據(jù)庫(kù),SQLite Python 默認(rèn)安裝的數(shù)據(jù)庫(kù),在 Django 中也可以默認(rèn)使用。


views文件

我理解views文件在Django中非常重要,它是連接頁(yè)面與數(shù)據(jù)的中間紐帶。拿登錄的例子來(lái)講,用戶在頁(yè)面上輸入了用戶名和密碼點(diǎn)擊登錄。那么 request 請(qǐng)求會(huì)由視圖層views來(lái)接收,如何提取出用戶名和密碼的數(shù)據(jù),如何用這些數(shù)據(jù)去查詢數(shù)據(jù)庫(kù),再如何將登錄成功的頁(yè)面返回給用戶,這些全部由視圖層views來(lái)完成。

與大多數(shù)的Web端開(kāi)發(fā)框架一樣,Django開(kāi)發(fā)同樣使用MVC模式

  • M 數(shù)據(jù)存取部分,由 Django 數(shù)據(jù)庫(kù)層處理,本章要講述的內(nèi)容。
  • V 選擇顯示哪些數(shù)據(jù)要顯示以及怎樣顯示的部分,由視圖和模板處理。
  • C 根據(jù)用戶輸入委派視圖的部分,由 Django 框架根據(jù) URLconf 設(shè)置,對(duì)給定 URL 調(diào)用適當(dāng)?shù)?Python 函數(shù)。

由于 C 由框架自行處理,而 Django 里更關(guān)注的是模型(Model)、模板(Template)和視圖(Views), Django 也被稱為 MTV 框架 。

在 MTV 開(kāi)發(fā)模式中:

  • M 代表模型(Model),即數(shù)據(jù)存取層。 該層處理與數(shù)據(jù)相關(guān)的所有事務(wù): 如何存取、如何驗(yàn)證有效
  • T 代表模板(Template),即表現(xiàn)層。 該層處理與表現(xiàn)相關(guān)的決定: 如何在頁(yè)面或其他類型文檔中進(jìn)行顯 示。
  • V 代表視圖(View),即業(yè)務(wù)邏輯層。 該層包含存取模型及調(diào)取恰當(dāng)模板的相關(guān)邏輯。 你可以把它看 作模型與模板之間的橋梁。

django開(kāi)發(fā)基礎(chǔ)--創(chuàng)建應(yīng)用程序(django 創(chuàng)建應(yīng)用)


覺(jué)得有用的朋友多幫忙轉(zhuǎn)發(fā)哦!后面會(huì)分享更多devops和DBA方面的內(nèi)容,感興趣的朋友可以關(guān)注下~

django開(kāi)發(fā)基礎(chǔ)--創(chuàng)建應(yīng)用程序(django 創(chuàng)建應(yīng)用)

版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請(qǐng)發(fā)送郵件至 舉報(bào),一經(jīng)查實(shí),本站將立刻刪除。