Django是一個開放源代碼的Web應用框架,由Python寫成。採用了MVC的框架模式,即模型M,視圖V和控制器C。它最初是被開發來用於管理勞倫斯出版集團旗下的一些以新聞內容爲主的網站的,便是CMS(內容管理系統)軟件。並於2005年7月在BSD許可證下發布。這套框架是以比利時的吉普賽爵士吉他手Django Reinhardt來命名的。
MVC是衆所周知的模式,即:將應用程序分解成三個組成部分:model(模型),view(視圖),和 controller(控制 器)。其中:
Django也是一個MVC框架。可是在Django中,控制器接受用戶輸入的部分由框架自行處理,因此 Django 裏更關注的是模型(Model)、模板(Template)和視圖(Views),稱爲 MTV模式:
對象關係映射 (ORM,object-relational mapping):以Python類形式定義你的數據模型,ORM將模型與關係數據庫鏈接起來,你將獲得一個很是容易使用的數據庫API,同時你也能夠在Django中使用原始的SQL語句。
URL 分派:使用正則表達式匹配URL,你能夠設計任意的URL,沒有框架的特定限定。像你喜歡的同樣靈活。
模版系統:使用Django強大而可擴展的模板語言,能夠分隔設計、內容和Python代碼。而且具備可繼承性。
表單處理:你能夠方便的生成各類表單模型,實現表單的有效性檢驗。能夠方便的從你定義的模型實例生成相應的表單。
Cache系統:能夠掛在內存緩衝或其它的框架實現超級緩衝 -- 實現你所須要的粒度。
會話(session):用戶登陸與權限檢查,快速開發用戶會話功能。
國際化:內置國際化系統,方便開發出多種語言的網站。
自動化的管理界面:不須要你花大量的工做來建立人員管理和更新內容。Django自帶一個ADMIN site,相似於內容管理系統
工做機制
首先咱們應該確保服務器上安裝了python3.7以及當前使用的是python3.7的環境
而後在命令行輸入如下命令安裝Django2.1.8pip install Django==2.1.8
python
輸入如下命令在當前文件夾下建立helloworld項目$ django-admin startproject helloworld
正則表達式
修改settings.py中的配置$ cd helloworld
$ cd helloworld
vim settings.py
數據庫
#ALLOWED_HOSTS位置的修改以下 ALLOWED_HOSTS = [ "你服務器的ip地址" ]
切換到上一級目錄並運行項目cd ..
$ python manage.py runserver 0.0.0.0:8001
django
使用runserver命令,開始一個工程
0.0.0.0 或者 0 , 表明任何IP都容許訪問
8001: 表明咱們對外的端口,默認端口爲80
咱們能夠經過你的服務器IP:端口
訪問這個網站
當咱們看下面的圖,就表明整個工程已經啓動成功vim
輸入Ctrl+c終止程序運行
切換到manage.py
,輸入如下命令$ python manage.py startapp hello
而後打開 hello/views.py,把下面這些 Python 代碼輸入進去:瀏覽器
from django.http import HttpResponse def index(request): return HttpResponse("Hello world.")
接着在 hello 目錄裏新建一個 urls.py 文件,把下面這些 Python 代碼輸入進去:服務器
from django.urls import path from . import views urlpatterns = [ path('', views.index, name='index'), ]
而後在helloworld/urls.py 文件的 urlpatterns 列表裏插入一個 include(), 以下:session
from django.contrib import admin from django.urls import include, path urlpatterns = [ path('polls/', include('hello.urls')), path('admin/', admin.site.urls), ]
最後切換到manage.py
所在文件夾下,輸入如下命令$ python manage.py runserver 0.0.0.0:8001
在你電腦的瀏覽器地址欄輸入http://你的服務器的ip地址:8001/hello/
便可看到hellworld架構