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

Python之Web框架Django項(xiàng)目搭建全過(guò)程

 更新時(shí)間:2017年05月02日 14:40:37   作者:孫華強(qiáng)  
這篇文章主要介紹了Python之Web框架Django項(xiàng)目搭建全過(guò)程,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧

Python之Web框架Django項(xiàng)目搭建全過(guò)程

IDE說(shuō)明:

  1. Win7系統(tǒng)
  2. Python:3.5
  3. Django:1.10
  4. Pymysql:0.7.10
  5. Mysql:5.5

注:可通過(guò)pip freeze查看已安裝庫(kù)版本信息。

Django 是由 Python 開(kāi)發(fā)的一個(gè)免費(fèi)的開(kāi)源網(wǎng)站框架,可以用于快速搭建高性能,優(yōu)雅的網(wǎng)站!

Django 特點(diǎn)

  1. 強(qiáng)大的數(shù)據(jù)庫(kù)功能
  2. 用python的類繼承,幾行代碼就可以擁有一個(gè)豐富,動(dòng)態(tài)的數(shù)據(jù)庫(kù)操作接口(API),如果需要你也能執(zhí)行SQL語(yǔ)句。
  3. 自帶的強(qiáng)大的后臺(tái)功能
  4. 幾行簡(jiǎn)單的代碼就讓你的網(wǎng)站擁有一個(gè)強(qiáng)大的后臺(tái),輕松管理你的內(nèi)容! 優(yōu)雅的網(wǎng)址
  5. 用正則匹配網(wǎng)址,傳遞到對(duì)應(yīng)函數(shù),隨意定義,如你所想!
  6. 模板系統(tǒng)–強(qiáng)大,易擴(kuò)展的模板系統(tǒng),設(shè)計(jì)簡(jiǎn)易,代碼,樣式分開(kāi)設(shè)計(jì),更容易管理。
  7. 緩存系統(tǒng)–與memcached或其它的緩存系統(tǒng)聯(lián)用,更出色的表現(xiàn),更快的加載速度。
  8. 國(guó)際化–完全支持多語(yǔ)言應(yīng)用,允許你定義翻譯的字符,輕松翻譯成不同國(guó)家的語(yǔ)言。

有關(guān)Python,MySQL的安裝操作這里不再進(jìn)行闡述,大家可在網(wǎng)絡(luò)上自行查找解決。其中,django,pymysql的安裝使用pip install *命令即可完成。

安裝好Django之后, 就可以使用 django-admin.py管理工具來(lái)創(chuàng)建一個(gè)項(xiàng)目。首先我們來(lái)看下django-admin.py的命令介紹,在命令行輸入django-admin.py查看可用的項(xiàng)目管理命令。

這里寫圖片描述 

Django項(xiàng)目創(chuàng)建HelloWorld項(xiàng)目具體過(guò)程如下:

Step1: 在搭建Django項(xiàng)目之前,首先選擇項(xiàng)目存放目錄。然后在Dos窗口CD切換到項(xiàng)目存放目錄。

Step2: 創(chuàng)建項(xiàng)目 執(zhí)行django-admin.py startproject HelloWorld

打開(kāi)IDEA,可看到創(chuàng)建的項(xiàng)目目錄如下圖所示:

這里寫圖片描述 

目錄說(shuō)明:

  1. HelloWorld: 項(xiàng)目的容器。
  2. manage.py: 一個(gè)實(shí)用的命令行工具,可讓你以各種方式與該 Django 項(xiàng)目進(jìn)行交互。
  3. HelloWorld/init.py: 一個(gè)空文件,告訴 Python 該目錄是一個(gè) Python 包。
  4. HelloWorld/settings.py: 該 Django 項(xiàng)目的設(shè)置/配置。
  5. HelloWorld/urls.py: 該 Django 項(xiàng)目的 URL 聲明; 一份由 Django 驅(qū)動(dòng)的網(wǎng)站”目錄”。
  6. HelloWorld/wsgi.py: 一個(gè) WSGI 兼容的 Web 服務(wù)器的入口,以便運(yùn)行你的項(xiàng)目。

接下來(lái)我們進(jìn)入 HelloWorld 目錄輸入以下命令,啟動(dòng)服務(wù)器:

python manage.py runserver 0.0.0.0:8000

0.0.0.0 讓其它電腦可連接到開(kāi)發(fā)服務(wù)器,8000 為端口號(hào)。如果不說(shuō)明,那么端口號(hào)默認(rèn)為 8000。

在瀏覽器輸入你服務(wù)器的ip及端口號(hào),如果正常啟動(dòng),輸出結(jié)果如下:

這里寫圖片描述 

Step3: 創(chuàng)建應(yīng)用 在命令行輸入django-admin.py startapp demo

打開(kāi)IDEA,可看到創(chuàng)建的項(xiàng)目目錄如下圖所示:

這里寫圖片描述 

目錄說(shuō)明:

  1. demo: 應(yīng)用的容器。注:后面的頁(yè)面設(shè)計(jì)文件,在此目錄下創(chuàng)建目錄templates,名為XX.html的文件放在此處。
  2. init.py:如上一個(gè)init.py文件
  3. migrations: 數(shù)據(jù)庫(kù)相關(guān)目錄,同步數(shù)據(jù)庫(kù)之后會(huì)出現(xiàn)數(shù)據(jù)類。
  4. admin.py: admin后臺(tái)管理文件
  5. apps.py: app應(yīng)用管理文件
  6. models.py:主要用一個(gè) Python 類來(lái)描述數(shù)據(jù)表,稱為模型(model) 。運(yùn)用這個(gè)類,你可以通過(guò)簡(jiǎn)單的 Python的代碼來(lái)創(chuàng)建、檢索、更新、刪除 數(shù)據(jù)庫(kù)中的記錄而無(wú)需寫一條又一條的SQL語(yǔ)句。
  7. tests.py:測(cè)試文件
  8. views.py:包含了頁(yè)面的業(yè)務(wù)邏輯。

創(chuàng)建超級(jí)管理員

python manage.py createsuperuser

# 按照提示輸入用戶名和對(duì)應(yīng)的密碼就好了郵箱可以留空,用戶名和密碼必填

# 修改 用戶密碼可以用:
python manage.py changepassword username

服務(wù)端響應(yīng)客戶端請(qǐng)求過(guò)程

流程圖如下:

這里寫圖片描述 

上面的流程圖可以大致描述Django處理request的流程,按照流程圖2的標(biāo)注,可以分為以下幾個(gè)步驟:

1.用戶通過(guò)瀏覽器請(qǐng)求一個(gè)頁(yè)面。

2.請(qǐng)求到達(dá)Request Middlewares,中間件對(duì)request做一些預(yù)處理或者直接response請(qǐng)求。

3.URLConf通過(guò)urls.py文件和請(qǐng)求的URL找到相應(yīng)的View。

4.View Middlewares被訪問(wèn),它同樣可以對(duì)request做一些處理或者直接返回response。

5.調(diào)用View中的函數(shù)。

6.View中的方法可以選擇性的通過(guò)Models訪問(wèn)底層的數(shù)據(jù)。

7.所有的Model-to-DB的交互都是通過(guò)manager完成的。

8.如果需要,Views可以使用一個(gè)特殊的Context。

9.Context被傳給Template用來(lái)生成頁(yè)面。

a.Template使用Filters和Tags去渲染輸出

b.輸出被返回到View

c.HTTPResponse被發(fā)送到Response Middlewares

d.任何Response Middlewares都可以豐富response或者返回一個(gè)完全不同的response

e.Response返回到瀏覽器,呈現(xiàn)給用戶

url() 函數(shù)

Django url() 可以接收四個(gè)參數(shù),分別是兩個(gè)必選參數(shù):regex、view 和兩個(gè)可選參數(shù):kwargs、name,接下來(lái)詳細(xì)介紹這四個(gè)參數(shù)。

  1. regex: 正則表達(dá)式,與之匹配的 URL 會(huì)執(zhí)行對(duì)應(yīng)的第二個(gè)參數(shù) view。
  2. view: 用于執(zhí)行與正則表達(dá)式匹配的 URL 請(qǐng)求。
  3. kwargs: 視圖使用的字典類型的參數(shù)。
  4. name: 用來(lái)反向獲取 URL。

Django項(xiàng)目部署

在前面的介紹中我們使用 python manage.py runserver 來(lái)運(yùn)行服務(wù)器。這只適用測(cè)試環(huán)境中使用。
正式發(fā)布的服務(wù),我們需要一個(gè)可以穩(wěn)定而持續(xù)的服務(wù)器,比如apache, Nginx, lighttpd等,本文后續(xù)將以 Nginx 為例。

設(shè)置用自己的iP地址訪問(wèn)項(xiàng)目

1.首先需要執(zhí)行>manage.py runserver 0.0.0.0:8000。

2.在setting.py里面需要添加ALLOWED_HOSTS=”*”。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • 通過(guò)OpenCV實(shí)現(xiàn)對(duì)指定顏色的物體追蹤

    通過(guò)OpenCV實(shí)現(xiàn)對(duì)指定顏色的物體追蹤

    這篇文章主要介紹的是通過(guò)OpenCV實(shí)現(xiàn)對(duì)特定顏色的物體追蹤,文中實(shí)驗(yàn)用的是綠蘿的樹葉。本文的示例代碼講解詳細(xì),對(duì)學(xué)習(xí)OPenCV有一定的幫助,感興趣的小伙伴可以了解一下
    2021-12-12
  • python使用matplotlib繪圖時(shí)圖例顯示問(wèn)題的解決

    python使用matplotlib繪圖時(shí)圖例顯示問(wèn)題的解決

    matplotlib 是python最著名的繪圖庫(kù),它提供了一整套和matlab相似的命令A(yù)PI,十分適合交互式地進(jìn)行制圖。下面這篇文章主要給大家介紹了在python使用matplotlib繪圖時(shí)圖例顯示問(wèn)題的解決方法,需要的朋友可以參考學(xué)習(xí),下面來(lái)一起看看吧。
    2017-04-04
  • 解決python3中cv2讀取中文路徑的問(wèn)題

    解決python3中cv2讀取中文路徑的問(wèn)題

    今天小編就為大家分享一篇解決python3中cv2讀取中文路徑的問(wèn)題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧
    2018-12-12
  • python在windows命令行下輸出彩色文字的方法

    python在windows命令行下輸出彩色文字的方法

    這篇文章主要介紹了python在windows命令行下輸出彩色文字的方法,涉及Python文字特效操作技巧,需要的朋友可以參考下
    2015-03-03
  • Python調(diào)用百度AI實(shí)現(xiàn)人像分割詳解

    Python調(diào)用百度AI實(shí)現(xiàn)人像分割詳解

    本文主要介紹了如何通過(guò)Python調(diào)用百度AI從而實(shí)現(xiàn)人像的分割與合成,文中的示例代碼對(duì)我們的工作或?qū)W習(xí)有一定的幫助,需要的朋友可以參考一下
    2021-12-12
  • python plotly畫柱狀圖代碼實(shí)例

    python plotly畫柱狀圖代碼實(shí)例

    這篇文章主要介紹了python plotly畫柱狀圖代碼實(shí)例,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2019-12-12
  • 詳解Selenium中元素定位方式

    詳解Selenium中元素定位方式

    測(cè)試對(duì)象的定位和操作是我們利用 selenium 編寫自動(dòng)化腳本和 webdriver 的核心內(nèi)容。本文我們就來(lái)學(xué)習(xí)一下常用的元素定位方法有哪些吧
    2022-06-06
  • Python循環(huán)語(yǔ)句之while循環(huán)和for循環(huán)詳解

    Python循環(huán)語(yǔ)句之while循環(huán)和for循環(huán)詳解

    在Python中,循環(huán)語(yǔ)句用于重復(fù)執(zhí)行一段代碼,直到滿足某個(gè)條件為止,在Python中,有兩種主要的循環(huán)語(yǔ)句:for循環(huán)和while循環(huán),本文就來(lái)給大家介紹一下這兩個(gè)循環(huán)的用法,需要的朋友可以參考下
    2023-08-08
  • python繪制彩虹圖

    python繪制彩虹圖

    這篇文章主要為大家詳細(xì)介紹了python繪制彩虹圖,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2019-12-12
  • Python隨機(jī)生成數(shù)模塊random使用實(shí)例

    Python隨機(jī)生成數(shù)模塊random使用實(shí)例

    這篇文章主要介紹了Python隨機(jī)生成數(shù)模塊random使用實(shí)例,本文直接給出示例代碼,需要的朋友可以參考下
    2015-04-04

最新評(píng)論

阜新| 缙云县| 中阳县| 鲁山县| 龙游县| 柘城县| 宜宾县| 长宁县| 杂多县| 泗水县| 湟源县| 东丰县| 高密市| 杭锦旗| 琼结县| 商城县| 大英县| 常州市| 阿勒泰市| 富源县| 赤壁市| 宜良县| 余江县| 盐山县| 绥中县| 蓬莱市| 锦屏县| 清徐县| 柳河县| 河间市| 乌苏市| 延川县| 扶风县| 莎车县| 裕民县| 岗巴县| 华蓥市| 永济市| 梁平县| 察哈| 贵港市|