欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

秒懂系列 | 史上最簡單的Python Django入門教程

系統 1625 0

http://www.cnblogs.com/baiboy/p/django1.html

摘要:Django的學習教程也是分門別類,形式不一。或是較為體系的官方文檔,或者風格自由的博客文檔,或者偏向實例的解析文檔。即使官方文檔,章節較多,文字闡述累贅,有時候我們只是關注某個功能用法而已,而自由博文最大的問題是互相抄襲,結構混亂,涵蓋面小且錯誤較為明顯。由此,本文結合學習期間資料梳理和項目開發經驗,整理出一套較為常用實用的文章。

?

適用于

?

  1. 新手入門,無論C#,C,java,Python,R等具有任何編程語言基礎均可;

  2. 想快速了解Django并可以快速開發上手者。

  3. 適用于作為資料查詢,技術點參考。

幾個基本概念

?

前置條件:假設讀者基本Python語言基礎,或者具備某種編程語言的基礎。你還熟悉web開發環境,懂些css,js,db等。

?

Django是什么?

?

Django是一個開放源代碼的Web應用框架,由Python寫成。采用了MVC的軟件設計模式,即模型M,視圖V和控制器C。它最初是被開發來用于管理勞倫斯出版集團旗下的一些以新聞內容為主的網站的。并于2005年7月在BSD許可證下發布。這套框架是以比利時的吉普賽爵士吉他手Django Reinhardt來命名的。 Django的主要目標是使得開發復雜的、數據庫驅動的網站變得簡單。Django注重組件的重用性和“可插拔性”,敏捷開發和DRY法則(Don't Repeat Yourself)。在Django中Python被普遍使用,甚至包括配置文件和數據模型。

————維基百科

?

Django是一個開放源代碼的Web應用框架,由Python寫成。采用了MVC的框架模式,即模型M,視圖V和控制器C。它最初是被開發來用于管理勞倫斯出版集團旗下的一些以新聞內容為主的網站的,即是CMS(內容管理系統)軟件。并于2005年7月在BSD許可證下發布。這套框架是以比利時的吉普賽爵士吉他手Django Reinhardt來命名的。

————百度百科

?

MTV開發模式?

?

Django是一個基于MVC構造的框架。但是在Django中,控制器接受用戶輸入的部分由框架自行處理,所以 Django 里更關注的是模型(Model)、模板(Template)和視圖(Views),稱為 MTV模式。它們各自的職責如下:

?

  1. 模型(Model),即數據存取層 處理與數據相關的所有事務: 如何存取、如何驗證有效性、包含哪些行為以及數據之間的關系等。

  2. 視圖(View),即表現層 處理與表現相關的決定: 如何在頁面或其他類型文檔中進行顯示。

  3. 模板(Template),即業務邏輯層 存取模型及調取恰當模板的相關邏輯。模型與模板的橋梁。

秒懂系列 | 史上最簡單的Python Django入門教程_第1張圖片

Django的架構?

?

讓我們一覽 Django 全貌:

?

urls.py 網址入口,關聯到對應的views.py中的一個函數(或者generic類),訪問網址就對應一個函數。

?

views.py 處理用戶發出的請求,從urls.py中對應過來, 通過渲染templates中的網頁可以將顯示內容,比如登陸后的用戶名,用戶請求的數據,輸出到網頁。

?

models.py 與數據庫操作相關,存入或讀取數據時用到這個,當然用不到數據庫的時候 你可以不使用。

?

forms.py 表單,用戶在瀏覽器上輸入數據提交,對數據的驗證工作以及輸入框的生成等工作,當然你也可以不使用。

?

templates 文件夾 views.py 中的函數渲染templates中的Html模板,得到動態內容的網頁,當然可以用緩存來提高速度。

?

admin.py 后臺,可以用很少量的代碼就擁有一個強大的后臺。

?

settings.py Django 的設置,配置文件,比如 DEBUG 的開關,靜態文件的位置等。

?

上面的py文件不理解也沒有關系,后面會詳細介紹。一圖勝千言,架構全貌工作機制如下所示:

秒懂系列 | 史上最簡單的Python Django入門教程_第2張圖片

Django大家都在使用的商業網站

?

Sohu 郵箱 、果殼網 、 豆瓣 、 愛調研 、 易度在線云辦公 、 優容網 、 快玩游戲、九九房、貸幫網 、 趣奇網 、知乎、時尚時空 、游嘻板: YxPad webpy、DNSPod 國際版 、下廚房 、 貝太廚房 、 Wopus問答 、 咕咚網 、扇貝網 、站長工具、易度文檔管理系統、個人租房、 在線文檔查看-易度云查看 、 FIFA310 足球數據分析專家、 搜狐隨身看等等。

Django配置準備

?

前置條件:pip、python、sublime、anaconda環境已經安裝。

?

后置條件:

?

檢查是否安裝成功:

?

xxx數據統計分析(決策)平臺

?

系統環境:WIN10 64bit

開發環境:sublime+Anaconda

數據庫:Mysql 5.6.17

語言:python3.5

框架:django1.11+Bootstrap

可視化工具:Highchart|Echarts|plotly|Bokeh(采用Echarts)

Django基礎配置安裝

?

1 創建項目,項目決策分析:xmjc_analysis

?

在E盤根目錄下創建xmjc_analysis:

?

效果:

?

settings.py 項目的設置文件

urls.py 總的urls配置文件

wsgi.py 部署服務器文件

__init__.py python包的目錄結構必須的,與調用有關。

?

2 創建App名為analysis

?

效果:

秒懂系列 | 史上最簡單的Python Django入門教程_第3張圖片

3 新定義的app加到settings.py中的INSTALL_APPS中

秒懂系列 | 史上最簡單的Python Django入門教程_第4張圖片

4 視圖和網址創建第一個頁面

?

(1)我們在analysis這個目錄中,把views.py打開,修改其中的源代碼:

秒懂系列 | 史上最簡單的Python Django入門教程_第5張圖片

第一行是聲明編碼為utf-8, 因為我們在代碼中用到了中文,如果不聲明就報錯.

?

第二行引入HttpResponse,它是用來向網頁返回內容的,就像Python中的 print 一樣,只不過 HttpResponse 是把內容顯示到網頁上。

?

我們定義了一個index()函數,第一個參數必須是 request,與網頁發來的請求有關,request 變量里面包含get或post的內容。

?

(2)我們打開 xmjc_analysis/xmjc_analysis/urls.py 這個文件, 修改其中的代碼:

秒懂系列 | 史上最簡單的Python Django入門教程_第6張圖片

(3)本地運行服務器測試

?

注意在項目根目錄xmjc_analysis運行結果如下:

秒懂系列 | 史上最簡單的Python Django入門教程_第7張圖片

(4)頁面傳參數,顯示歡迎‘admin’字樣

?

修改view.py源碼:

秒懂系列 | 史上最簡單的Python Django入門教程_第8張圖片

通過get方式接受頁面參數,當然也可以采用post,結合form實現。

?

5 配置簡單數據庫操作,默認sqlite,咱們指定mysql數據庫

?

(1)在xmjc_analysis/settings.py文件下修改如下:

秒懂系列 | 史上最簡單的Python Django入門教程_第9張圖片

xmjc_analysis/__init__.py下修改:

?

(2)在analysis/models.py下設計數據庫表,采用ORM方式

秒懂系列 | 史上最簡單的Python Django入門教程_第10張圖片

(3) 在analysis/admin.py中定義顯示數據

?

(4)創建更改的文件,將生成的py文件應用到數據庫

秒懂系列 | 史上最簡單的Python Django入門教程_第11張圖片

(5)創建超級管理員:用戶名,test;密碼密碼:test123456

(6)登錄后臺查看信息

?

運行服務器:python manage.py runserver

秒懂系列 | 史上最簡單的Python Django入門教程_第12張圖片

可以看到后臺信息,并對數據表進行增刪改查操作,但是后臺全部英文,可以改為中文顯示?

?

后臺管理設置為中文顯示,xmjc_analysis/settings.py下修改代碼

?

再去查看:

秒懂系列 | 史上最簡單的Python Django入門教程_第13張圖片

(7) Django 提供的 QuerySet API,shell玩轉MySql

?

在xmjc_analysis下輸入【 python manage.py shell】,然后查詢數據表。

秒懂系列 | 史上最簡單的Python Django入門教程_第14張圖片

創建一條用戶信息:

?

后臺查看:

秒懂系列 | 史上最簡單的Python Django入門教程_第15張圖片

其他操作方式:

秒懂系列 | 史上最簡單的Python Django入門教程_第16張圖片

(8)批量向數據表導入數據

?

將name.txt導入數據庫:

秒懂系列 | 史上最簡單的Python Django入門教程_第17張圖片

數據導入源碼:

秒懂系列 | 史上最簡單的Python Django入門教程_第18張圖片

查看結果:

秒懂系列 | 史上最簡單的Python Django入門教程_第19張圖片

>> 至此,基本熟悉上手了。深入學習待續...

— End —


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久一本日韩精品中文字幕屁孩 | 欧美日韩在线看 | 欧美日韩国产一区二区三区不卡 | 亚欧洲精品bb | 性欧美激情在线观看 | 欧美激情视频一区二区三区在线播放 | 欧美日韩视频在线第一区二区三区 | 天天操天天干天天操 | 欧美一区二区三区四区视频 | 亚洲欧洲日产国码在线观看 | 欧美色性视频 | 久久精品国产一区 | 国产福利在线免费 | 久久久中文 | 国产精品久久久久久久久久大牛 | 在线观看91精品国产入口 | 成人午夜AV亚洲精品无码网站 | 浮力影院欧美 | 日韩一级一欧美一级国产 | 国产精品美女久久久久久久久久久 | 国产在线小视频 | 黄网站在线观看 | 欧美色欧美 | 国产成人黄网址在线视频 | 久草在线视频精品 | 久久婷婷色香五月综合激情 | 成人免费高清 | 超碰欧美| 亚洲精品视频久久久 | 国产精品秒播无毒不卡 | 久草视频免费在线看 | 国产精品毛片一区二区三区 | 精品卡1卡二卡3卡 | 天堂在线91 | 亚洲精品视频久久久 | 天堂在线www网亚洲 欧美 日韩 | 久久亚洲国产精品五月天婷 | 天天操天天操天天操香蕉 | 亚洲 中文 欧美 日韩 在线观看 | 全色网站 | 精品一久久 |