Django基礎學習六之渲染

今天簡單的介紹一下Django的template的渲染和Django的template的基本的語法html

首先咱們先啓動一個django的shell,首先須要進入django的工程目錄下啓動django的shellpython

 

而後導入django的template模塊的template方法和Context方法shell

 

一、首先咱們來看下簡單的變量查詢進行渲染django

模板定義了有2個變量,一個是name一個是age,而後Context(上下文)分別對這2個變量進行賦值,而後用render方法對template進行渲染函數

 ================================================================================================================oop

下面咱們會學習如何把一個字典或者列表傳遞到上下文中,其實方法很簡單,這裏必需要用到字典【xxxx】,把咱們要傳遞的字典或者列表做爲字典【xxxx】的value傳遞學習

到上下文中,而後在template中經過k去獲取value,也就是要咱們要傳遞的字典或者列表url

 

二、而後咱們還可用字典來對template進行渲染,這裏要注意,在python中取字典的value須要用到中括號,可是在django中取字典的value要用到點號3d

這裏先定義了一個字典person,而後在上下文中把這個字段person做爲另一個字段的value的值傳遞進去htm

 

三、最後咱們還能夠用列表對template進行渲染,這裏要注意,在python中取列表的某個元素要用到中括號,可是在django中取列表的元素要用到點號

一樣,也要用字典的方式,把列表做爲字典的value的值傳遞給上下文,而後在進行渲染

 

 

 

 

下面咱們在簡單的介紹下tempalte的語法

一、先在工程的url中配置以下一條url

二、在工程的vews視圖文件中配置這樣一個函數,傳遞一個額外的字典給html文件,下面咱們就須要在html文件中處理這個額外的字典

三、使用tempalte的for循環獲取字典中的每個元素,代碼以下

效果以下

四、下面咱們要的效果是,若是年齡爲27,則給這個標籤加上固定的樣式,代碼以下,for循環中套一個if判斷

效果以下

五、下面咱們實現的效果是若是循環的次數大於2,那麼咱們給這個標籤加上樣式,這裏主要是學習forloop.counter這個變量,這個變量的意思就是當前循環的次數,從1開始,若是是forloop.counter0,則從0開始計數;代碼以下

效果以下

 

最後咱們在來學習一下tempalte的繼承

一、首先須要在子模板文件中繼承指定的父模板文件,寫法以下,下面的例子實現的效果是子模板全部的文件都被父模板覆蓋,這個其實不是咱們要的目的,這裏須要注意,就是一個html最多隻能夠繼承一個html文件;

二、而後咱們要在父模板中定義,哪些標籤是容許子模板更改的,這裏的xxxx是能夠任意定義的,這理的意思就是在block和endblock以前的標籤是容許子模板更改的

三、咱們在子模板中能夠從新定義父模板容許咱們更改的標籤的內容,可是其餘的標籤則會繼承父模板,下面的例子就重寫了容許修改的標籤的內容

實現的效果以下

相關文章
相關標籤/搜索