欧美三级国产三级日韩三级_亚洲熟妇丰满大屁股熟妇_欧美亚洲成人一区二区三区_国产精品久久久久久模特

Python進階(三十六)-Web框架Django項目搭建全過程 - 新聞資訊 - 云南小程序開發(fā)|云南軟件開發(fā)|云南網(wǎng)站建設(shè)-昆明葵宇信息科技有限公司

159-8711-8523

云南網(wǎng)建設(shè)/小程序開發(fā)/軟件開發(fā)

知識

不管是網(wǎng)站,軟件還是小程序,都要直接或間接能為您產(chǎn)生價值,我們在追求其視覺表現(xiàn)的同時,更側(cè)重于功能的便捷,營銷的便利,運營的高效,讓網(wǎng)站成為營銷工具,讓軟件能切實提升企業(yè)內(nèi)部管理水平和效率。優(yōu)秀的程序為后期升級提供便捷的支持!

Python進階(三十六)-Web框架Django項目搭建全過程

發(fā)表時間:2017-4-15

發(fā)布人:葵宇科技

瀏覽次數(shù):85

#Python進階(三十六)-Web框架Django項目搭建全過程
??IDE說明:

  • Win7系統(tǒng)

  • Python:3.5

  • Django:1.10

  • Pymysql:0.7.10

  • Mysql:5.5
    注:可通過pip freeze查看已安裝庫版本信息。
    Django 是由 Python 開發(fā)的一個免費的開源網(wǎng)站框架,可以用于快速搭建高性能,優(yōu)雅的網(wǎng)站!
    ##Django 特點

  • 強大的數(shù)據(jù)庫功能

  • 用python的類繼承,幾行代碼就可以擁有一個豐富,動態(tài)的數(shù)據(jù)庫操作接口(API),如果需要你也能執(zhí)行SQL語句。

  • 自帶的強大的后臺功能

  • 幾行簡單的代碼就讓你的網(wǎng)站擁有一個強大的后臺,輕松管理你的內(nèi)容! 優(yōu)雅的網(wǎng)址

  • 用正則匹配網(wǎng)址,傳遞到對應函數(shù),隨意定義,如你所想!

  • 模板系統(tǒng)–強大,易擴展的模板系統(tǒng),設(shè)計簡易,代碼,樣式分開設(shè)計,更容易管理。

  • 緩存系統(tǒng)–與memcached或其它的緩存系統(tǒng)聯(lián)用,更出色的表現(xiàn),更快的加載速度。

  • 國際化–完全支持多語言應用,允許你定義翻譯的字符,輕松翻譯成不同國家的語言。

??有關(guān)Python,Mysql的安裝操作這里不再進行闡述,大家可在網(wǎng)絡上自行查找解決。其中,django,pymysql的安裝使用pip install *命令即可完成。
??安裝好Django之后, 就可以使用 django-admin.py管理工具來創(chuàng)建一個項目。首先我們來看下django-admin.py的命令介紹,在命令行輸入django-admin.py查看可用的項目管理命令。
這里寫圖片描述
??Django項目創(chuàng)建HelloWorld項目具體過程如下:
??Step1: 在搭建Django項目之前,首先選擇項目存放目錄。然后在Dos窗口CD切換到項目存放目錄。
??Step2: 創(chuàng)建項目 執(zhí)行django-admin.py startproject HelloWorld
??打開IDEA,可看到創(chuàng)建的項目目錄如下圖所示:
這里寫圖片描述
??目錄說明:

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

??接下來我們進入 HelloWorld 目錄輸入以下命令,啟動服務器:

python manage.py runserver 0.0.0.0:8000

??0.0.0.0 讓其它電腦可連接到開發(fā)服務器,8000 為端口號。如果不說明,那么端口號默認為 8000。
??在瀏覽器輸入你服務器的ip及端口號,如果正常啟動,輸出結(jié)果如下:
這里寫圖片描述
??Step3: 創(chuàng)建應用 在命令行輸入django-admin.py startapp demo
??打開IDEA,可看到創(chuàng)建的項目目錄如下圖所示:
這里寫圖片描述
??目錄說明:

  • demo: 應用的容器。注:后面的頁面設(shè)計文件,在此目錄下創(chuàng)建目錄templates,名為XX.html的文件放在此處。
  • init.py:如上一個__init__.py文件
  • migrations: 數(shù)據(jù)庫相關(guān)目錄,同步數(shù)據(jù)庫之后會出現(xiàn)數(shù)據(jù)類。
  • admin.py: admin后臺管理文件
  • apps.py: app應用管理文件
  • models.py:主要用一個 Python 類來描述數(shù)據(jù)表,稱為模型(model) 。運用這個類,你可以通過簡單的 Python的代碼來創(chuàng)建、檢索、更新、刪除 數(shù)據(jù)庫中的記錄而無需寫一條又一條的SQL語句。
  • tests.py:測試文件
  • views.py:包含了頁面的業(yè)務邏輯。
    ##創(chuàng)建超級管理員
python manage.py createsuperuser
 
# 按照提示輸入用戶名和對應的密碼就好了郵箱可以留空,用戶名和密碼必填
 
# 修改 用戶密碼可以用:
python manage.py changepassword username

##附
###服務端響應客戶端請求過程
??流程圖如下:
這里寫圖片描述
??上面的流程圖可以大致描述Django處理request的流程,按照流程圖2的標注,可以分為以下幾個步驟:

  • 1.用戶通過瀏覽器請求一個頁面。
  • 2.請求到達Request Middlewares,中間件對request做一些預處理或者直接response請求。
  • 3.URLConf通過urls.py文件和請求的URL找到相應的View。
  • 4.View Middlewares被訪問,它同樣可以對request做一些處理或者直接返回response。
  • 5.調(diào)用View中的函數(shù)。
  • 6.View中的方法可以選擇性的通過Models訪問底層的數(shù)據(jù)。
  • 7.所有的Model-to-DB的交互都是通過manager完成的。
  • 8.如果需要,Views可以使用一個特殊的Context。
  • 9.Context被傳給Template用來生成頁面。
  • a.Template使用Filters和Tags去渲染輸出
  • b.輸出被返回到View
  • c.HTTPResponse被發(fā)送到Response Middlewares
  • d.任何Response Middlewares都可以豐富response或者返回一個完全不同的response
  • e.Response返回到瀏覽器,呈現(xiàn)給用戶

###url() 函數(shù)
??Django url() 可以接收四個參數(shù),分別是兩個必選參數(shù):regex、view 和兩個可選參數(shù):kwargs、name,接下來詳細介紹這四個參數(shù)。

  • regex: 正則表達式,與之匹配的 URL 會執(zhí)行對應的第二個參數(shù) view。
  • view: 用于執(zhí)行與正則表達式匹配的 URL 請求。
  • kwargs: 視圖使用的字典類型的參數(shù)。
  • name: 用來反向獲取 URL。

##Django項目部署
??在前面的介紹中我們使用 python manage.py runserver 來運行服務器。這只適用測試環(huán)境中使用。
??正式發(fā)布的服務,我們需要一個可以穩(wěn)定而持續(xù)的服務器,比如apache, Nginx, lighttpd等,本文后續(xù)將以 Nginx 為例。
##設(shè)置用自己的iP地址訪問項目

  • 1.首先需要執(zhí)行>manage.py runserver 0.0.0.0:8000。
  • 2.在setting.py里面需要添加ALLOWED_HOSTS="*"。

##學習資料
??http://www.ziqiangxuetang.com/django/django-tutorial.html

![這里寫圖片描述](https://img-blog.csdnimg.cn/img_convert/46cc348062c27bf57424afe162b04ab4.png) ![這里寫圖片描述](https://img-blog.csdnimg.cn/img_convert/f9c024e20306fb0e4e3e84a15aab3217.png)

相關(guān)案例查看更多