urls.py 網址入口,關聯到對應的views.py中的一個函數(或者generic類),訪問網址就對應一個函數。
views.py 處理用戶發出的請求,從urls.py中對應過來, 通過渲染templates中的網頁可以將顯示內容,比如登陸后的用戶名,用戶請求的數據,輸出到網頁。
models.py 與數據庫操作相關,存入或讀取數據時用到這個,當然用不到數據庫的時候 你可以不使用。
forms.py 表單,用戶在瀏覽器上輸入數據提交,對數據的驗證工作以及輸入框的生成等工作,當然你也可以不使用。
templates 文件夾
views.py 中的函數渲染templates中的Html模板,得到動態內容的網頁,當然可以用緩存來提高速度。
admin.py 后臺,可以用很少量的代碼就擁有一個強大的后臺。
settings.py Django 的設置,配置文件,比如 DEBUG 的開關,靜態文件的位置等。
~~~
常用子命令:
startproject:創建一個項目(*)
startapp:創建一個app(*)
runserver:運行開發服務器(*)
shell:進入django shell(*)
dbshell:進入django dbshell
check:檢查django項目完整性
flush:清空數據庫
compilemessages:編譯語言文件
makemessages:創建語言文件
makemigrations:生成數據庫同步腳本(*)
migrate:同步數據庫(*)
showmigrations:查看生成的數據庫同步腳本(*)
sqlflush:查看生成清空數據庫的腳本(*)
sqlmigrate:查看數據庫同步的sql語句(*)
dumpdata:導出數據
loaddata:導入數據
diffsettings:查看你的配置和django默認配置的不同之處
manage.py特有的一些子命令:
createsuperuser:創建超級管理員(*)
changepassword:修改密碼(*)
clearsessions:清除session
~~~
*****
## HttpRequest
每當一個用戶請求發送過來,Django將HTTP數據包中的相關內容,打包成為一個HttpRequest對象,并傳遞給每個視圖函數作為第一位置參數,也就是request,供我們調用。
HttpRequest對象中包含了非常多的重要的信息和數據。
[http://www.liujiangblog.com/course/django/138](http://www.liujiangblog.com/course/django/138)
## [](#querydict)QueryDict
在HttpRequest對象中,GET和POST屬性都是一個django.http.QueryDict的實例。也就是說你可以按本文下面提供的方法操作request.POST和request.GET。
request.POST或request.GET的QueryDict都是不可變,只讀的。如果要修改它,需要使用QueryDict.copy()方法,獲取它的一個拷貝,然后在這個拷貝上進行修改操作。
[http://www.liujiangblog.com/course/django/139](http://www.liujiangblog.com/course/django/139)
## [](#httpresponse)HttpResponse
HttpResponse類定義在django.http模塊中。
HttpRequest對象由Django自動創建,而HttpResponse對象則由程序員手動創建.
我們編寫的每個視圖都要實例化、填充和返回一個HttpResponse對象。也就是函數的return值。
[http://www.liujiangblog.com/course/django/140](http://www.liujiangblog.com/course/django/140)