WEB架構之---Django初級篇

來源:互聯網
上載者:User

標籤:python   django   模板   

一、下載與安裝(Windows版)

    :https://www.djangoproject.com/download/

    或者通過命令:pip install django==1.11.2進行安裝(Python3使用pip3)推薦使用此版本


    安裝完成後找到django-admin.exe所在的路徑,將其添加到環境變數Path中,以便於今後在任何位置運行命令。


二、建立django程式


    1、終端方式建立

   django-admin startproject my_site   #建立一個名稱為my_site的django程式,即檔案夾,在哪個目錄執行命令即在那個目錄建立

     執行成功之後會組建目錄結構:

650) this.width=650;" src="https://s2.51cto.com/wyfs02/M00/9A/25/wKioL1lSB2ShsXwBAAC2OQb5dGg897.png" title="QQ20170627152015.png" alt="wKioL1lSB2ShsXwBAAC2OQb5dGg897.png" />

    執行:python manage.py runserver 127.0.0.1:8000

       這時,django已經在本地跑起來了...

    

    其他常用命令:

      python manage.py runserver 0.0.0.0  #不限定IP和連接埠
      python manage.py startapp appname #在項目中建立app即不同的功能模組
      python manage.py syncdb                  #同步資料庫
      python manage.py makemigrations    #基於當前的model建立新的遷移策略檔案
      python manage.py migrate               #用於執行遷移動作

          python manage.py createsuperuser     #建立超級管理員

    註:migration是基於App的, 因此, 我們可以針對某些app不啟用migration功能 

    2、IDE方式建立django項目

        工具:pycharm

        步驟:File---NewProject---Django---選擇好Python解譯器然後點擊“create”即可搞定


三、配置

    1、設定資料庫

DATABASES = {    ‘default‘: {    ‘ENGINE‘: ‘django.db.backends.mysql‘,    ‘NAME‘:‘dbname‘,    ‘USER‘: ‘root‘,    ‘PASSWORD‘: ‘xxx‘,    ‘HOST‘: ‘‘,    ‘PORT‘: ‘‘,    }}

    可在與項目名同名的目錄中找到settings.py檔案然後將預設的DATABASES項進行修改,Django支援多種資料庫,上述為mysql配置方式,詳情請參考官方文檔

    另外,Django預設的串連mysql的模組為MysqlDB,而python3中還沒有此模組,需要使用pymysql,這時需要在__init__.py中匯入pymysql並設定

import pymysqlpymysql.install_as_MySQLdb()


    2、模板配置

TEMPLATE_DIRS = (        os.path.join(BASE_DIR,‘templates‘),    )

    此項一般不用設定,瞭解其是放置模板檔案(html)的即可

    3、靜態檔案路徑

STATICFILES_DIRS = (        os.path.join(BASE_DIR,‘static‘),    )

     此目錄放置網站所用到的圖片、媒體、樣式、外掛程式等檔案

    4、剛接觸django,建議先注釋掉settings.py檔案中的以下一行,後面做以解釋,不然測試時有可能出現錯誤

MIDDLEWARE中的:# ‘django.middleware.csrf.CsrfViewMiddleware‘,


四、路由系統

    所謂路由,其實就是路徑,導向,即一個URL請求來到伺服器端之後,django怎麼取匹配這個url並且得需要判斷這個url具體應該訪問到哪些資源或者定位到哪個地方,然後再由相應的地方處理此請求並且返回給用戶端。

    1、單一路由對應:一個url對應一個處理函數,即

    url(r‘^index$‘, views.index),

    2、基於正則的路由

    url(r‘^index/(\d*)‘, views.index),    url(r‘^manage/(?P<name>\w*)/(?P<id>\d*)‘, views.manage),

    3、添加額外的參數

    url(r‘^manage/(?P<name>\w*)‘, views.manage,{‘id‘:333}),

    4、為路由映射設定名稱

    url(r‘^home‘, views.home, name=‘h1‘),    url(r‘^index/(\d*)‘, views.index, name=‘h2‘),

設定名稱之後,可以在不同的地方調用,如:

  • 模板中使用產生URL     {% url ‘h2‘ 2012 %}

  • 函數中使用產生URL     reverse(‘h2‘, args=(2012,))      路徑:django.urls.reverse

  • Model中使用擷取URL  自訂get_absolute_url() 方法

    5、根據app對路由規則進行分類(路由分發)

    url(r‘^web/‘,include(‘web.urls‘)),

    django中的路由系統和其他語言的架構有所不同,在django中每一個請求的url都要有一條路由映射,這樣才能將請求交給對一個的view中的函數去處理。其他大部分的Web架構則是對一類的url請求做一條路由映射,從而是路由系統變得簡潔。


五、admin

    django amdin是django提供的一個後台管理頁面,改管理頁面提供完善的html和css,使得你在通過Model建立完資料庫表之後,就可以對資料進行增刪改查,而使用django admin 則需要以下步驟:

  • 建立後台管理員

  • 配置url

  • 註冊和配置django admin後台管理頁面


    1、建立後台管理員

    python manage.py createsuperuser

    2、配置後台管理url

    url(r‘^admin/‘, include(admin.site.urls))

    3、註冊和配置django admin後台管理頁面

    admin.py中執行如下代碼:

    from django.contrib import admin          from app01 import  models          admin.site.register(models.UserType)

    另外,還可通過Bootstrap給後台管理頁面添加樣式,讓頁面好看起來

WEB架構之---Django初級篇

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.