django框架初探

django框架初探html

1.web框架介紹python

  web框架本質是一個socket服務端。每個端口只能被一個程序監聽。web

  web程序分爲兩個部分:django

  服務器程序:對socket服務器封裝,解析http請求,發送http響應。flask

  應用程序:負責具體的業務邏輯。ubuntu

 

  WSGI:(Web Service Gateway Interface)WSGI接口定義很是簡單,它只要求Web開發者實現一個函數,就能夠響應HTTP請求。設計模式

咱們先編寫hello.py,實現Web應用程序的WSGI處理函數:瀏覽器

  #hello.py服務器

  def application(environ, start_response):mvc

    start_response('200 OK', [('Content-Type', 'text/html')])

     return '<h1>Hello, web!</h1>'

上面的application()函數就是符合WSGI標準的一個HTTP處理函數,它接收兩個參數:

  environ:一個包含全部HTTP請求信息的dict對象;

    start_response:一個發送HTTP響應的函數。                                                                                                                                                           

  application()函數必須由WSGI服務器來調用。Python內置了一個WSGI服務器,這個模塊叫wsgiref,它是用純Python編寫的WSGI服務器的參考實現。所謂「參考實現」是指該實現徹底符合WSGI標準,可是不考慮任何運行效率,僅供開發和測試使用。

而後,再編寫一個server.py,負責啓動WSGI服務器,加載application()函數:

  # server.py

 # 從wsgiref模塊導入:from wsgiref.simple_server import make_server

web框架就是將web應用開發中通用的部分抽象出來,像造房子同樣,造成一個框架,再去實現咱們特定的功能。
常見的Python Web框架有:
  django 全能型
  tornado 優秀的異步框架
  web.py 小巧的web框架
  flask 優秀的輕量級的web框架
設計模式:
  mtv:
    m:
model模型
    t:template 模型(頁面)
    v:view 視圖
# 導入咱們本身編寫的application函數: from hello import application # 建立一個服務器,IP地址爲空,端口是8000,處理函數是application: httpd = make_server('', 8000, application) print "Serving HTTP on port 8000..." # 開始監聽HTTP請求: httpd.serve_forever()

確保以上兩個文件在同一個目錄下,而後運行server.py來啓動WSGI服務器,啓動成功後,打開瀏覽器,輸入
http://localhost:8000/,就能夠看到結果了。
http://localhost:8000/
  mvc:Model-View-Controller,中文名「模型-視圖-控制器」。和mtv沒有本質的區別。

2.django框架的介紹
環境搭建,django安裝
準備環境:
ubuntu
python3.5+
pycharm 2017.1.5+專業版
MySQL

每建立一個新的django項目,都要新建一個python隔離環境。


隔離環境:
1.查看  workon
2.建立  mkvirtualenv -p /usr/bin/python3.6 envname
3.進入  workon envname
4.退出  deactivate
5.刪除虛擬環境  rmvirtualenv envname

建立一個名爲crm的python隔離環境 mkvirtualenv -p /usr/bin/python3.6 crm
安裝一個django包:pip install django

django簡單操做:
1.建立項目:  django-admin startproject <projectname>

2.pycharm建立項目遠程關聯:

3.啓動服務
命令行:python manage.py runserver ip:port 在項目根目錄
(ip:0.0.0.0)

用pycharm配置:

第一個View:
項目和應用
項目:有一些設置的django
建立一個應用:python manage.py startapp appname
應用能夠有多個,應用之間經過項目交互

相關文章
相關標籤/搜索