Django 框架簡介與使用注意事項

一、Django 框架簡介

MVC 框架

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

Django 框架的設計模式借鑑了 MVC 框架的思想,也是分成三部分,來降低各個部分之間的耦合性。

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

模型: 負責業務對象與數據庫的映射 (ORM),視圖: 負責與用戶的交互 (頁面),控制器: 接受用戶的輸入調用模型和視圖完成用戶的請求

Django 的 MTV 模式

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

Template(模版):負責如何把頁面展示給用戶 (html)

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

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

Django 框架圖示

二、Django 下載安裝與使用注意事項

  1. 安裝 django
pip3 install django==1.11.11
  1. 創建 django 項目
    在 cmd 命令行下創建一個名爲 mysite 的 Django 項目
django-admin startproject mysite
  1. 目錄介紹
mysite
├── manage.py  # Django入口管理文件
└── templates  # 存放html文件
└── mysite  # 項目目錄
    ├── __init__.py
    ├── settings.py  # 配置
    ├── urls.py  # 路由 --> URL和函數的對應關係
    └── wsgi.py  # runserver命令就使用wsgiref模塊做簡單的web server
  1. 模板文件配置
    使用命令行創建 django 項目 不會自動幫你創建 templates 文件夾, 只能自己創建
    在. settings 文件中 需要你手動在 TEMPLATES 的 DIRS 寫配置
    [os.path.join(BASE_DIR, 'templates')]
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [os.path.join(BASE_DIR, 'templates')], # templates 文件夾位置
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],
        },
    },
]
  1. 啓動 django 項目
python manage.py runserver

當我們訪問:http://127.0.0.1:8080 / 時就可以看到圖下,即代表成功

  1. 創建應用 app01
python manage.py startapp app01

在 pycharm 創建 app

 

在輸入框直接輸入以下命令即可創建一個名爲 app02 的 APP

7.app 應用目錄:

└── app01  # 項目目錄
    ├── migrations文件夾  # 存放數據庫遷移記錄
    ├── __init__.py
    ├── admin.py    # django後臺管理
    └── apps.py     # 註冊相關
    └── models.py   # 模型類
    └── tests.py    # 測試文件
    └── views.py    # 存放視圖函數

注意:如果是在命令行下創建 app 後, 需要你去 settings 配置文件中註冊添加 app 名字。這樣 django 項目才能識別到你這個 app

  1. 靜態文件配置:

靜態文件配置官方文檔

什麼是靜態文件?

靜態文件就是在打開網頁時所用到的 圖片、 js、css 以及第三方的框架 bootstrap、fontawesome、sweetalert

通常情況下 網站所用到的靜態文件資源 統一都放在 static 文件夾下,爲了方便識別

STATIC_URL = '/static/'  # 是訪問靜態資源的接口前綴,並不是存放靜態文件的文件夾
"""只要你想訪問靜態資源 你就必須以static開頭"""
# 手動在settings最底下添加配置靜態文件訪問資源
# 下面都是存放靜態文件的文件夾的路徑
# 從上往下找靜態文件,找不到就報錯
STATICFILES_DIRS = [
    os.path.join(BASE_DIR,'static'),
    os.path.join(BASE_DIR,'static1'),
    os.path.join(BASE_DIR,'static2'),
]

圖解:

  1. 禁用中間件:

前期爲了方便表單提交測試。在 settings 配置文件中暫時禁用 csrf 中間件

  1. 重定向:

重定向的意思就是,我訪問的鏈接不是我剛剛輸入的那個鏈接,而是我一輸入他就跳轉到了另外一個鏈接,這就是重定向

最後注意事項:

  1. 計算機的名稱不能有中文
  2. 一個 pycharm 窗口就是一個項目
  3. 項目名裏面儘量不要用中文

django 版本問題
1.X 2.X 現在市面上用的比較多的還是 1.X
推薦使用 1.11.9~1.11.13

django 安裝
pip3 install django==1.11.11

如何驗證 django 是否安裝成功
命令行直接敲 django-admin

一個 django 項目就類似於是一所大學,而 app 就類似於大學裏面的學院
django 其實就是用來一個個應用的
一個 app 就相當於一塊獨立的功能
用戶功能
管理功能
.........

django 支持任意多個 app

三、Django 的請求生命流程圖

來源:

https://www.cnblogs.com/guapitomjoy/p/11747691.html

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/fuWeCNNI7sM3zWk0i66p5A