最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

django的安裝和創(chuàng)建應(yīng)用過程詳解

 更新時間:2023年07月22日 08:47:54   作者:清澈的澈  
這篇文章主要介紹了django的安裝和創(chuàng)建應(yīng)用,本文通過圖文并茂的形式給大家介紹的非常詳細,需要的朋友可以參考下

1.安裝Django

終端運行

pip install django

查看django是否安裝成功

python -m django --version

1.1 安裝虛擬環(huán)境

在控制臺運行

pip install virtualenv

1.1.2 創(chuàng)建虛擬環(huán)境

在特定文件夾內(nèi)打開終端運行

virtualenv -p D:\program_condition\python\python.exe env_dj
virtualenv -p python解釋器所在位置 項目名稱

生成

1.2激活和退出虛擬環(huán)境

進入上圖的Scripts文件夾內(nèi),打開終端

activate  # 激活

deactivate.bat # 退出

1.3 安裝和配置VSCode

  • 先正常安裝VSCode
  • 再安裝python插件
  • 安裝Django插件,搜索django,安裝前兩個

2.關(guān)于Django

特點

  • 功能完善,開發(fā)速度快,安全性強
  • 有完善的在線文檔
  • 模型自帶數(shù)據(jù)庫ORM組件
  • 可以使用正則表達式管理路由映射,方便靈活

2.1 MVC和MTV模式

目前主流的web框架,基本上使用MVC模式開發(fā)web應(yīng)用,最大優(yōu)勢在于可以降低系統(tǒng)各個模塊間的耦合度。

2.1.1 MVC軟件架構(gòu)模式

該模式將Web應(yīng)用開發(fā)分為三個層次:

  • 模型(Model):負責(zé)處理各個功能的實現(xiàn)。
  • 視圖(View):負責(zé)頁面的顯示和用戶的交互。包含由HTML,CSS, JS組成的各種頁面。
  • 控制器(Controller):用于將用戶請求轉(zhuǎn)發(fā)給相應(yīng)的模型進行處理,并根據(jù)模型的處理結(jié)果向用戶提供相應(yīng)的響應(yīng)。

具體應(yīng)用的例子

Web應(yīng)用程序:

  • M(Model):業(yè)務(wù)邏輯,例如數(shù)據(jù)庫交互和數(shù)據(jù)處理等。
  • V(View):用戶界面,例如HTML和CSS等。
  • C(Controller):處理用戶請求和控制用戶界面,例如處理HTTP請求和調(diào)用模型邏輯等。

桌面應(yīng)用程序:

  • M(Model):文本編輯器的數(shù)據(jù)模型,例如保存文本數(shù)據(jù)等。
  • V(View):用戶界面,例如文本編輯器的UI界面。
  • C(Controller):處理用戶輸入和狀態(tài)管理,例如處理用戶的鼠標(biāo)和鍵盤輸入、保存文件等。

2.1.2 MTV模式

Django對MVC模式進行修改,成為MTV模式。

  • M:模型,負責(zé)業(yè)務(wù)對象和數(shù)據(jù)庫的關(guān)系映射(ORM)
  • T:模板,負責(zé)頁面的顯示和用戶的交互
  • V:視圖,負責(zé)業(yè)務(wù)邏輯,并在適當(dāng)?shù)臅r候調(diào)用Model和Template

還包含了一個URL分發(fā)器,將一個個URL頁面請求分發(fā)給不同的View進行處理。view再調(diào)用相應(yīng)的Model和Template。此時,URL分發(fā)器和View共同充當(dāng)了控制器(Controller)。

在MTV模式下,urls.pyviews.py 對應(yīng)控制器,models.py對應(yīng)模型Model,視圖view對應(yīng)templates下的所有文件。

3.開發(fā)第一個Django應(yīng)用

3.1 創(chuàng)建項目

在終端進入項目文件夾,激活虛擬環(huán)境,執(zhí)行

django-admin startproject mydjango  # mydjango為自定義名稱

生成mydjango項目,目錄:

mydjango  # 根目錄 可以任意命名
│ manage.py # 一個命令行使用程序,命令行方式與Django項目交互
└─mydjango # 項目目錄。這個名稱不能修改
        asgi.py # 與ASGI兼容的Web服務(wù)器,為項目提供服務(wù)的入口
        settings.py # 該項目的全局配置文件
        urls.py # 該項目的路由配置文件
        wsgi.py # 兼容WSGI的Web服務(wù)器,為你的項目提供服務(wù)的入口
        __init__.py # 空文件,告訴python該目錄應(yīng)該被視為python包目錄

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

cd進入根目錄,創(chuàng)建一個名為myapp 的應(yīng)用,命令如下:

python manage.py startapp myapp  # myapp為應(yīng)用名稱 可自定義

應(yīng)用目錄結(jié)構(gòu):

myapp  # 應(yīng)用目錄,不能修改名稱
│  admin.py # 后臺管理使用
│  apps.py # 應(yīng)用管理文件
│  models.py # 模型文件
│  tests.py # 測試用例
│  views.py # 視圖文件
│  __init__.py # 
│
└─migrations # 該目錄包含了數(shù)據(jù)遷移文件,默認包含__init__.py
      __init__.py  # 一個空文件,告訴python該目錄應(yīng)該被視為python包目錄

創(chuàng)建應(yīng)用后,需要在全局配置文件中手動注冊:打開 mydjango\settings.py 文件,找到INSTALLED_APPS 節(jié)點,添加應(yīng)用名稱

3.3 處理控制器

控制器主要有視圖文件views.py和路由文件urls.py組成

  • 視圖函數(shù),實現(xiàn)模板與模板之間的交互
  • 處理請求主要也是由視圖函數(shù)完成
  • 先處理視圖的動態(tài)邏輯 myapp/views.py
from django.shortcuts import render # 該方法的作用是將指定的模板進行渲染,并將渲染結(jié)果返回給客戶端
# Create your views here.
from django.http import HttpResponse # 該類用于構(gòu)造HTTP響應(yīng)對象
from myapp import views  # 導(dǎo)入視圖函數(shù)
def index(request): # 視圖函數(shù)index,該函數(shù)接收一個request對象作為參數(shù),該對象包含了客戶端的請求信息
	return render(request, '1/index.html') # 該行調(diào)用render方法,將index.html模板進行渲染,并將渲染結(jié)果返回給客戶端。在該方法中,第一個參數(shù)是request對象,第二個參數(shù)是要渲染的模板文件名

以上代碼的作用是定義一個視圖函數(shù),當(dāng)客戶端訪問該視圖的時候,該視圖將渲染index.html模板文件,并將渲染結(jié)果返回給客戶端。

  • 處理URL請求路徑mydjango\urls.py
from django.contrib import admin
from django.urls import path
urlpatterns = [
    path('index/', views.index), 
]

第四行的作用:定義了一個urlpatterns列表,該列表存儲了所有的URL路由映射關(guān)系,path()方法用于定義一個路由映射規(guī)則,該方法接收兩個參數(shù),第一個參數(shù)是路由路徑,第二個參數(shù)是視圖函數(shù)。該例子中,path('index/', views.index)表示當(dāng)用戶訪問localhost:8000/index/路徑時,該請求將被路由到views.py文件中的index()函數(shù)進行處理。定義了一個URL路由,將localhost:8000/index/路徑映射到了views.py文件中的index()函數(shù)進行處理。

3.4 處理模板

默認沒有模板目錄,需要手動創(chuàng)建,還需設(shè)置全局配置文件。

3.4.1 創(chuàng)建模板目錄和模板文件

在manage.py的同級目錄中創(chuàng)建templates目錄。

在templates目錄下創(chuàng)建一個 1 目錄,用來保存本章的模板文件;在1 目錄下新建一個index.html文件,在文件中添加

<div style = "color : red; font-size : 24px;">
	你好 Django!
</div>

創(chuàng)建好模板目錄后,還不能直接使用,需要在全局文件中對模板目錄進行注冊。

3.4.2 配置全局設(shè)置文件settings.py

打開mydjango\setting.py 文件,找到TEMPLATES 選項,修改代碼

import os # 導(dǎo)入模塊
'DIRS': [os.path.join(BASE_DIR, 'templates')],

3.5 運行應(yīng)用

在終端打開應(yīng)用根目錄,運行

python manage.py runserver

瀏覽器地址輸入:127.0.0.1:8000 即可訪問

出現(xiàn)一個小插曲:輸入后初始頁面正常

但是訪問index頁面無法訪問,終端也沒報錯,停止運行后,才出現(xiàn)報錯提示

原來是url文件中沒有導(dǎo)入視圖函數(shù)

from myapp import views

成功!組合鍵 Ctrl + C 退出

到此這篇關(guān)于django的安裝和創(chuàng)建應(yīng)用的文章就介紹到這了,更多相關(guān)django安裝創(chuàng)建內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論

武邑县| 达尔| 陆河县| 塔河县| 桐柏县| 海阳市| 澄城县| 密云县| 老河口市| 达州市| 永川市| 张掖市| 岐山县| 江达县| 浦北县| 重庆市| 贵定县| 石首市| 祁门县| 高平市| 商洛市| 冕宁县| 龙海市| 平泉县| 武胜县| 突泉县| 高雄县| 三原县| 台安县| 永登县| 诸暨市| 玉龙| 喜德县| 承德市| 宜黄县| 藁城市| 龙川县| 咸阳市| 清水河县| 陆丰市| 张掖市|