Django template

ss
3 min readSep 24, 2018

--

上回我們探討到如何去連接url與view,透過此我們可以很快的回應我們要的文字,但今天如果我們想要回應的是一個html的檔案格式呢?

我們又稱為模板,如果有不清楚建議可以花少許時間了解一下,內容其實不難,難再後來要做出來的東西XD(譬如結合css ,js做出一個漂亮的網頁,筆者這方面超弱)

先寫好一份index.html並放置prat/templates/prat/index.html(如此一來,django會根據你的url去取得相對應app的templates)

接著我們去改一下prat/views.py的讀取方式

主要上就是去引入這個html檔,然後用render這個method去呼叫,這邊注意到要有context這個dict,之後會跟models去做連結,這邊就先直接空白就好了

除此之外我們也可以改用render這個函數,讓式子更好理解,也更簡潔

如此以來我們去run就能用html產生一樣效果的頁面,甚至html彈性更好喔~

好接著我們進階一些,如果今天我想要show有許多課程的資訊,我們可以利用上面沒有提到的功能(看一下上方的context沒有東西)

開一個新的app叫做seeclass

我們可以先在views裡寫好課程的資訊,像下圖

有注意到locals這個函數,它會自動將呼叫之前的local cariable字典都存起來,方便又好用,詳情就容我不在這邊敘述了

接著我們在改一下seeclass/templates/seeclass/course.html

透過for迴圈剛剛list裡的的東西依序呼叫出來,這樣就可以輕鬆複製許多一樣的版面了

結果如下

熟悉html的朋友也可以在這邊多做耶其他變化,玩玩看

我們template與view的連結介紹在這邊先告個小段落,謝謝收看

之後models(database)要慢慢加進來了

--

--

ss
ss

No responses yet