1. 程式人生 > >廖大python實戰教程第八天

廖大python實戰教程第八天

前言

今天的內容和python沒有多大關係,反而涉及到很久沒學的HTML和JS。我這次的目標很明確,就是快速做出一個專案哪怕是照著抄的。前端這部分是一個坑,我也只是略懂一點,暫時不專門花時間再去找相關資料了。就今天的css框架而言,有一些非常好的教程,以後要重補前端內容,可以來這裡看看。
uikit中文使用教程

資原始檔問題

碰到的第一個問題就是資原始檔和廖大所說的有一些出入,看了下評論區應該是版本的問題。找了下uikit的github也實在找不到合適的版本,直接從廖大的GitHub的下載過來。

使用模板

使用模板其實廖大之前專門講過,就是MOV框架的那一章。jinja2是一個html的框架,自己之前把它和uikit攪混了。

使用模板,我們需要預先準備一個HTML文件,這個HTML文件不是普通的HTML,而是嵌入了一些變數和指令,然後,根據我們傳入的資料,替換後,得到最終的HTML,傳送給使用者。

這就是傳說中的MVC:Model-View-Controller,中文名“模型-檢視-控制器”。

Python處理URL的函式就是C:Controller,Controller負責業務邏輯,比如檢查使用者名稱是否存在,取出使用者資訊等等;包含變數{{ name }}的模板就是V:View,View負責顯示邏輯,通過簡單地替換一些變數,View最終輸出的就是使用者看到的HTML。

MVC中的Model在哪?Model是用來傳給View的,這樣View在替換變數的時候,就可以從Model中取出相應的資料。

在Jinja2模板中,我們用{{ name }}表示一個需要替換的變數。很多時候,還需要迴圈、條件判斷等指令語句,在Jinja2中,用{% ... %}表示指令。

模板“繼承”

模板繼承的目的是為了解決幾個頁面的模板整體結構一致的問題。通過編寫一個父模板,在父模板中定義一些可替換的block,然後編寫多個子模版來替換這些block就可以實現多個模板了。