知道mvt設計模式中mvt分別代表的含義
能夠使用命令建立django工程和子應用
知道如何在django中定義檢視及路由
理解django路由的匹配流程
能夠區分命名引數和未命名引數的區別
知道如何使用request物件獲取查詢字串引數
知道如何使用request物件獲取請求體資料
對專案進行分層的一種軟體設計模式;
核心思想:分層,解耦,分離了 資料處理 和 介面顯示 的**,使得一方**修改了不會影響到另外一方,提高程式的可擴充套件性和可維護性。
專案和應用的建立 (兩種方式)
django-admin startproject 專案名
執行伺服器
python manage.py runserver # 使用預設ip和埠
python manage.py runserver 127.0
.0.1
:8000
# 手動指定ip和埠
檢視初步使用
..# 配置路由和檢視:
# 引數1: 匹配url的正規表示式
# 引數2: 匹配成功後由django框架呼叫的檢視函式
url(r'^users/index$'
, views.index)
,]模板初步使用
常用配置項
語言和時區配置
language_code =
'zh-hans'
# 指定為中文
time_zone =
'asia/shanghai'
# 指定時區
class
usersconfig
: name =
'users'
[..
.,# 方式一
# 'users' # 方式二
]靜態檔案使用配置
靜態檔案: css, js, images
配置:
static_url =
'/static/'
staticfiles_dirs =
[os.path.join(base_dir,
'static_files'
)]
url配置
針對 進行路由配置,習慣分開兩部分來配置
專案的 urls.py:
urlpatterns =[.
..url(r'^users/'
, include(
'users.urls'))
,]
應用的 urls.py:
urlpatterns =[.
..url(r'^index$'
, views.index)
,]
捕獲url中的引數【重要】
傳參方式
示例如獲取引數
備註url路徑(path)
/news/1/2
正則查詢字串
/news2?category=1&page=2
request.get
querydict
請求體:表單型別的資料
category=1&page=2
request.post
querydict
請求體:非表單型別的資料(json, xml)
request.body
bytes
請求頭category=1 page=2
request.meta
字典類似字典,一鍵可以有多個值
get
方法: 獲取值
getlist
方法:獲取多個值,返回列表
request.get,request.post 都為querydict型別的物件
request屬性
說明備註
get獲取查詢字串引數 (與請求方式無關)
querydict
post
獲取請求體中的表單型別的資料(與請求方式有關,僅限post請求)
querydict
body
獲取請求體非表單型別的資料,比如:json
bytes
meta
獲取請求頭中的資料
(獲取自定義屬性時,需要 加字首http_, 轉大寫)
字典user
當前訪問的登入使用者物件
問題1:當請求方式為 post ,是否可以通過 reqeust.get 獲取查詢查詢字串引數?
可以問題2:當請求方式為 put , 是否可以通過 request.post 獲取到請求體中的表單資料?
不可以,需要用request.body獲取
Django專案搭建
python等環境的安裝在這裡就不一一描述了,建議安裝anaconda這是乙個開源的平台,裡面包含了很多科學包很方便。環境 django1.8.2 python3.6.3 tensorflow1.3 h5py2.7 keras2.1.2 numpy1.13.3 pillow5.0.0 pymysql...
django專案搭建
一 建立django專案 2.配置環境變數 可在安裝中勾選自動配置 3.使用pip安裝django pip install django 4.使用django在當前目錄下建立專案 django admin startproject djangodemo 5.執行專案測試 cd djangodemo ...
Django基礎1 專案搭建
這邊先介紹市場流行版本 django 1.11.7 啟動的ip 埠,或直接 埠 python manage.py runserver 0.0 0.0 8000 8000python manage.py makemigrations 本地生成遷移 python manage.py migrate 資料...