第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

全部開(kāi)發(fā)者教程

PyCharm 編輯器教程

PyCharm 數(shù)據(jù)庫(kù)工具
PyCharm 的數(shù)據(jù)庫(kù)工具
首頁(yè) 慕課教程 PyCharm 編輯器教程 PyCharm 編輯器教程 在 PyCharm 里創(chuàng)建 Django 項(xiàng)目

在 PyCharm 里創(chuàng)建 Django 項(xiàng)目

相對(duì)于Python的其他Web框架,Django的功能是最完整的,本節(jié)將帶領(lǐng)大家在 PyCharm 里 創(chuàng)建一個(gè)Django 項(xiàng)目,了解框架中各個(gè)組件的應(yīng)用以及如何調(diào)試等相關(guān)功能。

1. Django 框架特點(diǎn)

Django定義了服務(wù)發(fā)布、路由映射、模板編程、數(shù)據(jù)處理的一整套功能。這也意味著Django模塊之間緊密耦合,開(kāi)發(fā)者需要學(xué)習(xí)Django自己定義的這一整套技術(shù)。

Django是遵循MVC架構(gòu)的Web開(kāi)發(fā)框架,其主要由以下幾部分組成。

  • 管理工具(Management):一套內(nèi)置的創(chuàng)建站點(diǎn)、遷移數(shù)據(jù)、維護(hù)靜態(tài)文件的命令工具;
  • 模型(Model):提供數(shù)據(jù)訪問(wèn)接口和模塊,包括數(shù)據(jù)字段、元數(shù)據(jù)、數(shù)據(jù)關(guān)系等的定義及操作;
  • 視圖(View):Django 的視圖層封裝了 HTTP Reques t和 Response 的一系列操作和數(shù)據(jù)流,其主要功能包括URL映射機(jī)制、綁定模板等;
  • 模板(Template):是一套 Django 自己的頁(yè)面渲染模板語(yǔ)言,用若干內(nèi)置的 tags 和 filters 定義頁(yè)面的生成方式;
  • 表單(Form):通過(guò)內(nèi)置的數(shù)據(jù)類(lèi)型和控件生成 HTML 表單;
  • 管理站(Admin):通過(guò)聲明需要管理的 Model,快速生成后臺(tái)數(shù)據(jù)管理網(wǎng)站。

2. 創(chuàng)建 Django 項(xiàng)目

主菜單 File -> New Project, 在左側(cè)列表選擇 Django, 然后選擇解釋器及定義相關(guān)路徑及名字,點(diǎn)擊 Create。

圖片描述
點(diǎn)擊創(chuàng)建之后,PyCharm 自動(dòng)幫我們創(chuàng)建一個(gè)虛擬環(huán)境和安裝最新版的 Django。
圖片描述
文件創(chuàng)建完成后, 查看文件結(jié)構(gòu):
圖片描述
在一個(gè)項(xiàng)目里,可以增加多個(gè) Django Application , 可以通過(guò) Terminal 窗口 或者 Tools -> Run manage.py task 窗口, 輸入 startapp App名字, 回車(chē)之后我們就能看到,我們的項(xiàng)目目錄里多出一個(gè)文件夾。
圖片描述
在 Terminal 窗口輸入下面的命令, 效果是一樣的。

python manage.py startapp myapp_two

此時(shí)僅僅是app創(chuàng)建完成,還需要在 settings.py 的 INSTALLD_APPS 列表中進(jìn)行配置才能正常使用該app 應(yīng)用:
圖片描述

3. 定義視圖函數(shù)與創(chuàng)建模板 template

3.1 定義視圖函數(shù)

視圖函數(shù)實(shí)際上定義一系列訪問(wèn)頁(yè)面時(shí)的內(nèi)容。比如在在 myapp -> views.py 文件加入下面代碼

from django.shortcuts import render


def home(request):
    return render(request, 'home.html')

3.2 從視圖創(chuàng)建模板

打開(kāi) views.py , “home.html" 處會(huì)有錯(cuò)誤提示, 在建議信息列表中選擇 Create template home.html, 指定路徑后,會(huì)創(chuàng)建一個(gè)空的 home.html 文件。

圖片描述
在 home.html 里可以填加下面的內(nèi)容:

<!DOCTYPE html>
<html>
<head>
    <title>Welcome</title>
</head>
<body>
歡迎來(lái)到慕課WIKI
</body>
</html>

Tips : HTML,XHTML 與 XML 始終都是可被識(shí)別的模板類(lèi)型,如果想增加新的,主菜單 PyCharm/File -> Preference /Settings -> Languages & Frameworks -> Template Language 可以為不同的模板語(yǔ)言增加更多模板類(lèi)型。
圖片描述

3.3 在模板和視圖之間切換

在編輯中打開(kāi)文件,點(diǎn)擊左側(cè)邊欄的圖標(biāo),就可以完成模板與視圖之間的切換。
圖片描述

4. 運(yùn)行與調(diào)試

4.1 運(yùn)行項(xiàng)目

1. 路由設(shè)置: 定義視圖函數(shù)相關(guān)的URL(網(wǎng)址) ,即規(guī)定訪問(wèn)什么網(wǎng)址對(duì)應(yīng)什么內(nèi)容。

打開(kāi) urls.py ,按下面內(nèi)容修改文件:

圖片描述
2. Django 是自帶后臺(tái)管理的,如果需要,需要初始化數(shù)據(jù)庫(kù)。在Tools -> Run manage.py task窗口執(zhí)行下面的命令

makemigrations
migrate
createsuperuser

相當(dāng)于在 Terminal 窗口執(zhí)行:

python manage.py makemigrations
python manage.py migrate
python manage.py createsuperuser

圖片描述
然后點(diǎn)擊運(yùn)行按鈕,可以訪問(wèn)home 頁(yè),也可以訪問(wèn)后臺(tái)管理系統(tǒng)。
也可運(yùn)行命令 python manage.py runserver 8000
圖片描述

4.2 調(diào)試 Template

修改 view.py 與 home.html 代碼,方便查看調(diào)試效果。

from django.shortcuts import render


def home(request):
    TutorialList = ["HTML", "CSS", "jQuery", "Python", "Django"]
    return render(request, 'home.html', {'TutorialList': TutorialList})

home.html:

<!DOCTYPE html>
<html>
<head>
    <title>Welcome</title>
</head>
<body>
歡迎來(lái)到慕課WIKI
教程列表:
</ul>
{% for i in TutorialList %}
    <li>{{ i }}</li>
{% empty %}
    <li>抱歉,列表為空</li>
{% endfor %}
</ul>
</body>
</html>

1. 修改 run/debug configuration , 改端口到 8123:
圖片描述

2. 在要調(diào)試的 template 文件里設(shè)置斷點(diǎn), 點(diǎn)擊 Debug 按鈕,開(kāi)始調(diào)試。相應(yīng)的步進(jìn)按鈕、Watches功能都是正常使用的,與調(diào)試 Python 代碼沒(méi)有什么區(qū)別:
圖片描述

5. 小結(jié)

本小節(jié)介紹了如何在 PyCharm 創(chuàng)建一個(gè) Django 項(xiàng)目,包括創(chuàng)建視圖函數(shù)、模板,如何配置路由與調(diào)試模板文件等等,PyCharm 為支持 Django 框架提供的功能都不復(fù)雜,真正能用Django 框架創(chuàng)建 Web 項(xiàng)目 更多依賴(lài)于對(duì)框架各個(gè)組件及相關(guān)功能熟知程度,建議閱讀Django 官網(wǎng)文檔,按照官網(wǎng)提供的例子在 PyCharm 里實(shí)踐。
圖片描述