Django-0一、初識Django和搭建Django helloworld

1.介紹Django

1.1 Django的來源

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

1.2 Django 的特色

  • 徹底免費並開源源代碼
  • 快速高效開發
  • 使用MTV模式(以MVC模式爲原型)
  • 強大的可擴展性.
  • 社區豐富
  • 第三方框架豐富

1.3 Django 的架構

MVC是衆所周知的模式,即:將應用程序分解成三個組成部分:model(模型),view(視圖),和 controller(控制 器)。其中:
  • M——管理應用程序的狀態(一般存儲到數據庫中),並約束改變狀態的行爲(或者叫作「業務規則」)。
  • C——接受外部用戶的操做,根據操做訪問模型獲取數據,並調用「視圖」顯示這些數據。控制器是將「模型」和「視圖」隔離,併成爲兩者之間的聯繫紐帶。在django對應view。
  • V——負責把數據格式化後呈現給用戶。
Django也是一個MVC框架。可是在Django中,控制器接受用戶輸入的部分由框架自行處理,因此 Django 裏更關注的是模型(Model)、模板(Template)和視圖(Views),稱爲 MTV模式:
  • M 表明模型(Model),即數據存取層。 該層處理與數據相關的全部事務: 如何存取、如何驗證有效性、包含哪些行爲以及數據之間的關係等。
  • T 表明模板(Template),即表現層。 該層處理與表現相關的決定: 如何在頁面或其餘類型文檔中進行顯示。
  • V 表明視圖(View),即業務邏輯層。 該層包含存取模型及調取恰當模板的相關邏輯。 你能夠把它看做模型與模板之間的橋樑。

1.4 Django的設計

對象關係映射 (ORM,object-relational mapping):以Python類形式定義你的數據模型,ORM將模型與關係數據庫鏈接起來,你將獲得一個很是容易使用的數據庫API,同時你也能夠在Django中使用原始的SQL語句。
URL 分派:使用正則表達式匹配URL,你能夠設計任意的URL,沒有框架的特定限定。像你喜歡的同樣靈活。
模版系統:使用Django強大而可擴展的模板語言,能夠分隔設計、內容和Python代碼。而且具備可繼承性。
表單處理:你能夠方便的生成各類表單模型,實現表單的有效性檢驗。能夠方便的從你定義的模型實例生成相應的表單。
Cache系統:能夠掛在內存緩衝或其它的框架實現超級緩衝 -- 實現你所須要的粒度。
會話(session):用戶登陸與權限檢查,快速開發用戶會話功能。
國際化:內置國際化系統,方便開發出多種語言的網站。
自動化的管理界面:不須要你花大量的工做來建立人員管理和更新內容。Django自帶一個ADMIN site,相似於內容管理系統
工做機制

2 搭建Django helloworld

2.1 安裝Django

首先咱們應該確保服務器上安裝了python3.7以及當前使用的是python3.7的環境
而後在命令行輸入如下命令安裝Django2.1.8
pip install Django==2.1.8python

2.2 建立一個項目

輸入如下命令在當前文件夾下建立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:8001django

使用runserver命令,開始一個工程
0.0.0.0 或者 0 , 表明任何IP都容許訪問
8001: 表明咱們對外的端口,默認端口爲80
咱們能夠經過你的服務器IP:端口訪問這個網站
當咱們看下面的圖,就表明整個工程已經啓動成功vim

圖片描述

2.3 繼續完成helloworld

輸入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架構

圖片描述

相關文章
相關標籤/搜索