diango專案第二步

2021-07-31 00:06:36 字數 2262 閱讀 4711

django 模板

使用 django.http.httpresponse() 來輸出 「hello world!」。該方式將資料與檢視混合在一起,不符合 django 的 mvc 思想。

django 的模板是乙個文字,用於分離文件的表現形式和內容。模板應用例項,在 helloworld 目錄底下建立 templates 目錄並建立 hello.html檔案,整個目錄結構如下:

[root@vm_153_111_centos helloworld]# tree -a

.├── db.sqlite3

├── helloworld

│ ├── __init__.py

│ ├── __init__.pyc

│ ├── settings.py

│ ├── settings.pyc

│ ├── templates

│ │ └── hello.html

│ ├── urls.py

│ ├── urls.pyc

│ ├── view.py

│ ├── view.pyc

│ ├── wsgi.py

│ └── wsgi.pyc

└── manage.py

2 directories, 13 files

hello.html 檔案**如下:

helloworld/templates/hello.html 檔案**:

}h1>

#hello加雙括號表示hello是變數

向django中新增模板檔案的路徑,修改helloworld/settings.py,修改 templates 中的 dirs 為 [base_dir+」/templates」,],如下所示:

helloworld/helloworld/settings.py 檔案**,這裡直接把hello.html檔案的路徑直接複製過來的,如下:

修改view.py檔案,新增新的物件

我們現在修改 view.py,增加乙個新的物件,用於向模板提交資料:

helloworld/helloworld/view.py 檔案**:

這裡使用 render 來替代之前使用的 httpresponse。render 還使用了乙個字典 context 作為引數。

context 字典中元素的鍵值 「hello」 對應了模板中的變數 「}」。再訪問可以看到頁面:

異常情況:

templatedoesnotexist at /hello

hello.html

request method: get

request url:

django version: 1.11

exception type: templatedoesnotexist

exception value: hello.html

exception location: /usr/lib/python2.7/site-packages/django-1.11-py2.7.egg/django/template/loader.py in get_template, line 25

python executable: /usr/bin/python

python version: 2.7.5

python path:

['/root/local/helloworld',

一般都是模板路徑錯了,可以使用絕對路徑。

python學習第二步

函式的呼叫 以絕對值函式abs 為例,可以直接從python的官方 檢視文件,也可以從互動介面利用help abs 檢視。常用或不好記函式 持續更新 hex 函式 將乙個整數轉換為十六進製制表示的字串。函式的定義 定義乙個函式要使用def語句,函式返回值用return語句返回。ep def my a...

成為ITer的第二步

斷斷續續的補習,對於網管 系統管理的知識算是有了個大概認識。今天小結幾個要點,算是對以前的失誤及現在的更新認識吧。1 選擇乙個主攻方向,太重要了!it行業往細處做真的技術多,而且更新快,說實在的跟不上時代的節奏。不是我不行,而是沒入行,閉門造車 的惡果就是習得一些過時的技術,沒用。得專注,專注在乙個...

vector第二步修煉之道

定義vector.h檔案 pragma once include using namespace std template class vector else end 2 delete first first newfirst e first 儲存放入容器的元素 int end element陣列的...