Django框架 + Djiango安裝 + First Djiango + 經常使用命令

1、Django框架

MVC框架和MTV框架

參考:http://www.javashuo.com/article/p-xpmrupkq-cv.htmlhtml

MVC,全名是Model View Controller,是軟件工程中的一種軟件架構模式,把軟件系統分爲三個基本部分:模型(Model)、視圖(View)和控制器(Controller),具備耦合性低、重用性高、生命週期成本低等優勢。python

 

 

想要更詳細的瞭解MVC模式? >> 點我web

Django框架的設計模式借鑑了MVC框架的思想,也是分紅三部分,來下降各個部分之間的耦合性。正則表達式

Django框架的不一樣之處在於它拆分的三部分爲:Model(模型)、Template(模板)和View(視圖),也就是MTV框架。數據庫

Django的MTV模式

       Model(模型):負責業務對象與數據庫的對象(ORM)django

       Template(模版):負責如何把頁面展現給用戶設計模式

       View(視圖):負責業務邏輯,並在適當的時候調用Model和Template瀏覽器

此外,Django還有一個urls分發器,它的做用是將一個個URL的頁面請求分發給不一樣的view處理,view再調用相應的Model和Template服務器

Django框架圖示

 

 

2、Django安裝

參考:https://www.runoob.com/django/django-install.html架構

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

 

pip方式安裝:

pip install Django

源碼安裝:

下載源碼包:https://www.djangoproject.com/download/

輸入如下命令並安裝:

tar xzvf Django-X.Y.tar.gz    # 解壓下載包
cd Django-X.Y                 # 進入 Django 目錄
python setup.py install       # 執行安裝命令

安裝成功後 Django 位於 Python 安裝目錄的 site-packages 目錄下。

3、First Django

3.1 建立項目

django-admin startproject HelloWorld

項目的目錄結構

$ cd HelloWorld/
$ tree
.
|-- HelloWorld
|   |-- __init__.py
|   |-- settings.py
|   |-- urls.py
|   `-- wsgi.py
`-- manage.py

目錄說明:

  • HelloWorld: 項目的容器。
  • manage.py: 一個實用的命令行工具,可以讓你以各類方式與該 Django 項目進行交互。
  • HelloWorld/__init__.py: 一個空文件,告訴 Python 該目錄是一個 Python 包
  • HelloWorld/settings.py: 該 Django 項目的設置/配置。
  • HelloWorld/urls.py: 該 Django 項目的 URL 聲明; 一份由 Django 驅動的網站"目錄"。
  • HelloWorld/wsgi.py: 一個 WSGI 兼容的 Web 服務器的入口,以便運行你的項目。

啓動服務器

接下來咱們進入 HelloWorld 目錄輸入如下命令,啓動服務器:

python3 manage.py runserver 0.0.0.0:8000

0.0.0.0 讓其它電腦可鏈接到開發服務器,8000 爲端口號。若是不說明,那麼端口號默認爲 8000。

在瀏覽器輸入你服務器的 ip(這裏咱們輸入本機 IP 地址: 127.0.0.1:8000) 及端口號,若是正常啓動,輸出結果以下:

3.2 視圖和URL配置

在先前建立的 HelloWorld 目錄下的 HelloWorld 目錄新建一個 view.py 文件,並輸入代碼:

from django.http import HttpResponse
 
def hello(request):
    return HttpResponse("Hello world ! ")
HelloWorld/HelloWorld/view.py 文件代碼:

 

接着,綁定 URL 與視圖函數。打開 urls.py 文件,刪除原來代碼,將如下代碼複製粘貼到 urls.py 文件中:

from django.conf.urls import url
 
from . import view
 
urlpatterns = [
    url(r'^$', view.hello),
]
HelloWorld/HelloWorld/urls.py

整個目錄結構以下:

$ tree
. |-- HelloWorld | |-- __init__.py | |-- __init__.pyc | |-- settings.py | |-- settings.pyc | |-- urls.py # url 配置 | |-- urls.pyc | |-- view.py # 添加的視圖文件 | |-- view.pyc # 編譯後的視圖文件 | |-- wsgi.py | `-- wsgi.pyc `-- manage.py

完成後,啓動 Django 開發服務器,並在瀏覽器訪問打開瀏覽器並訪問:

 

 

 咱們也能夠修改如下規則:

from django.urls import path
 
from . import view
 
urlpatterns = [
    path('hello/', view.hello),
]
HelloWorld/HelloWorld/urls.py

經過瀏覽器打開 http://127.0.0.1:8000/hello,輸出結果以下:

注意:項目中若是代碼有改動,服務器會自動監測代碼的改動並自動從新載入,因此若是你已經啓動了服務器則不需手動重啓。

3.3  path() 函數

Django path() 能夠接收四個參數,分別是兩個必選參數:route、view 和兩個可選參數:kwargs、name。

語法格式:

path(route, view, kwargs=None, name=None)
  • route: 字符串,表示 URL 規則,與之匹配的 URL 會執行對應的第二個參數 view。

  • view: 用於執行與正則表達式匹配的 URL 請求。

  • kwargs: 視圖使用的字典類型的參數。

  • name: 用來反向獲取 URL。

Django2. 0中可使用 re_path() 方法來兼容 1.x 版本中的 url() 方法,一些正則表達式的規則也能夠經過 re_path() 來實現 。

from django.urls import include, re_path

urlpatterns = [
    re_path(r'^index/$', views.index, name='index'),
    re_path(r'^bio/(?P<username>\w+)/$', views.bio, name='bio'),
    re_path(r'^weblog/', include('blog.urls')),
    ...
]

四 Django常見命令

參考連接:http://www.javashuo.com/article/p-xpmrupkq-cv.html

建立項目:

django-admin startproject mysite

啓動項目: 啓動項目的時候,須要切換到mysite目錄下

python manage.py runserver  #默認使用8000端口

命令後面還能夠指定參數:

python manage.py runserver 8888  #8888爲新指定的端口
python manage.py runserver 127.0.0.1:8000  #還能夠指定IP和端口,冒號分割

4.1 建立APP:

一個Django項目能夠分爲不少個APP,用來隔離不一樣功能模塊的代碼。

命令行建立:

python manage.py startapp app01

執行命令後,項目目錄下多出一個app01的文件夾,目錄結構以下:

app01/
    migrations
        __init__.py
    __init__.py
    admin.py
    apps.py
    models.py
    tests.py
    views.py

Pycharm建立:

可使用PyCharm的manage.py工具來執行命名。在主菜單欄中選擇Tools,在下拉菜單中選擇Run manage.py task,會出現以下圖所示的工具對話框:

在彈出的命令窗口中直接輸入下面的命令即可建立app:

 startapp app01

 

 

 

 使用PyCharm的manage.py工具執行命令時,只用輸入命令及參數便可,再也不輸入python manage.py了。

 

4.2 數據庫遷移

python manage.py makemigrations
python manage.py migrate

4.3 建立超級用戶

python manage.py createsuperuser

輸入以上命令後,根據提示輸入用戶名、郵箱、密碼、確認密碼。密碼的要求至少是不八位,不能和郵箱太接近,兩次密碼須要一致。

相關文章
相關標籤/搜索