Django簡介與安裝

一、Django介紹

Django是一個開源的Web應用框架,由Python寫成,基於MVC構造。但是在Django中,控制器接受用戶輸入的部分由框架自行處理,所以 Django 裏更關注的是模型(Model)、

模板(Template)和視圖(Views),稱爲 MTV模式。它們各自的職責如下:

 層次  職責
模型(model):數據存取層  處理與數據相關的所有事務:如何存取、驗證有效性、包含哪些行爲以及數據關係等
視圖(view):表現層  處理與表現相關的決定:如何在頁面或其他類型的文檔中進行顯示 
模板(template):業務邏輯層  存取模型及調取恰當模板的相關邏輯,即模型與模板的橋樑 

1、設計哲學

Django的主要目的是簡便、快速的開發數據庫驅動的網站。強調代碼複用,多個組件可以很方便的以“插件”形式服務於整個框架。

Django有許多功能強大的第三方插件,甚至可以很方便的開發出自己的工具包,具有很強的可擴展性。它還強調快速開發和DRY(Do Not Repeat Yourself)原則。

2、工作機制

①、用manage .py runserver啓動Django服務器時就載入了在同一目錄下的settings.py。該文件包含了項目中的配置信息,其中最重要的配置就是ROOT_URLCONF,

       它告訴Django哪個Python模塊應該用作本站的URLConf,默認的是urls.py;

②、當訪問url的時候,Django會根據ROOT_URLCONF的設置來裝載URLConf;

③、按順序逐個匹配URLConf裏的URLpatterns。如果找到則會調用相關聯的視圖函數,並把HttpRequest對象作爲第一個參數(通常是request);

④、最後該view函數負責返回一個HttpResponse對象;

 

二、安裝

Django框架更新較爲頻繁,每個版本之間總是有些差異的,因此可以根據下面的python和Django匹配情況選擇版本進行安裝。

Django對python各版本的支持情況如下表:

Django version Python version
1.8 2.7,3.3,3.4,3.5
1.9,1.10 2.7,3.4,3.5
1.11 2.7,3.4,3.5,3.6
2.0 3.5+

PS:由於Python2.7版本預計2020年之後將不再維護,所以我使用的是Python3.6.2版本,Django爲2.0版本。

安裝方式:

①、通過pip命令進行安裝:

pip install django(默認爲Django最新版本)

pip install django==2.0.2(Django截至目前最新版本,這裏只是爲了方便演示,安裝自己需要的版本),更多相關資料可參考這裏:Django

②、通過下載安裝文件進行安裝:

django官方網站:https://www.djangoproject.com/

python官方倉庫:https://pypi.python.org/pypi/Django

三、使用

1、新建一個項目

通過cmd命令,新建一個目錄Test

目錄結構如下:

__init__.py:讓Python把該目錄當成一個標準的開發包;

settings.py:django項目的配置文件;

urls.py:django項目的URL配置文件;

wsgi.py:wsgi是Python語言定義的web服務器,爲項目提供的一種服務接口;

manage.py:命令行工具,可以用多種方式與該django項目進行交互;

2、創建並運行應用

①、通過cmd命令,在Test項目下新建一個應用webdev:

應用目錄如下:

migrations/:記錄models中的數據變更;

admin.py:映射models中的數據到admin後臺;

apps.py:對創建的應用進行配置,比如新增文件;

models.py:Django模型文件,創建應用程序的數據表模型;

tests.py:創建測試用例;

views.py:Django視圖文件,控制向前端頁面傳輸的內容;

②、通過cmd命令運行項目:

默認情況下,會在8000端口啓動一個本地服務器。當然,如果遇到端口被佔用或者其他情況,可以自定義端口,比如上面的命令中,我使用了8001端口、

在瀏覽器輸入127.0.0.1:8001,啓動後可以看到如下界面,就說明我們的應用服務成功啓動

四、django命令使用

  • 創建項目命令:django-admin startprject 項目名
  • 創建應用命令:python manage.py  startapp appname
  • 啓動項目:    python manage.py  runserver IP PROT

django設置用戶是python manage.py createsuperuser,但是如果忘記密碼,那麼應該進入shell環境 下修改

python manage.py createsuperuser

使用python manage.py shell

from django.contrib.auth.models import User

user = User.objects.get(username='admin')
user.set_password('new_password')
user.save()

orm有修改

python manage.py makemigrations
python manage.py migrate

獲取Userprofile

user = User.objects.get(id=1)
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章