Django 學習筆記(五)模板標籤
關於Django模板標籤官方網址https://docs.djangoproject.com/en/1.11/ref/templates/builtins/
1.IF標籤
Hello World/views.py
1 from django.shortcuts import render 2 3 class Person(object): 4 def __init__(self,name,age,sex): 5 self.name=name 6 self.age=age 7 self.sex=sex 8 9 def say(self):views.py10 return "I'm %s." %self.name 11 12 def index(request): 13 #傳入普通變數 14 #傳入資料為 html 中的變數:views中的變數 15 #return render(request,'index.html',{'title':'Welcome','name':'KeinLee'}) 16 17 #傳入字典變數 18 person = {'name':'Lee','age':20,'sex':'male'} 19 #傳入列表變數 20 book_list =['Python','Java','C'] 21 #book_list =[] 22 #傳入物件變數 23 #person=Person('Lucky',18,'female') 24 return render(request,'index.html',{'title':'Welcome','person':person,'book_list':book_list})
(1)if ...elif...else...endif
Hello World/temlplates/index.html
{% if book_list.0 == 'Java' %} 第一本書是Java {% elif book_list.0 == 'Python' %} 第一本書是Python {% else %} 第一本書是C {% endif %}View Code
結果為:第一本書是Python
(2)if...and...or...not...endif
注意:and和or可以同用,但是and的優先順序比or高
Hello World/temlplates/index.html
{% if book_list or person %} 存在book_list 或者 person {% endif %} {% if book_list and person %} book_list 和 person都存在 {% endif %} {% if book_list and not person %} 存在book_list 不存在person {% endif %}View Code
結果為:存在book_list 或者 person、book_list 和 person都存在、(空)
(3)if符號運算(==、!=、>、>=、<=、<、in、not in、is、is not)
if is XX True這個是當且僅當XX為真,這個暫時理解不了
{% if book_list.0 == 'Python' %} 1.第一本書是Python {% endif %} {% if book_list.0 != 'Python' %} 2.第一本書不是Python {% endif %} {% if person.age <= 20 %} 3.這個人的年齡沒超過20 {% else %} 4.這個人的年齡超過20 {% endif %} {% if 'Python' in book_list %} 5.Python在book_list列表裡 {% endif %} {% if 'Py' not in book_list %} 6.Py在book_list列表裡 {% endif %} {% if book_list.4 is not True %} 7.book_list.4不存在 {% endif %} {% if book_list is not None%} 8.book_list列表存在 {% endif %}View Code
結果:1、 3、 5、 6、7、8能夠顯示
2.For標籤
(1)列表for迴圈
{% for book in book_list %} {{book}} {% endfor %}
結果:Python Java C
(2)字典for迴圈
{% for k,v in person.items %} {{k}}:{{v}} {% endfor %}
結果:sex:male name:Lee age:20
(3)for...empty (在views.py中沒有定義book_list2)
{% for book in book_list2 %} {{book}} {% empty %} 沒有這個列表或者該列表為空 {% endfor %}
結果:沒有這個列表或者該列表為空
(4)forloop
forloop.counter 迴圈記數,預設1開始
forloop.counter0 迴圈記數,從0開始
forloop.revcounter 迴圈到記數,預設1結束
forloop.revcounter0 迴圈記數,到0結束
forloop.first 第一次迴圈bool值為True,一般與if連用
forloop.last 最後一次迴圈bool值為True,一般與if連用
forloop.parentloop 迴圈巢狀中對上一層迴圈的操作
{% for k in person %} {%if forloop.first %} 這是第一次迴圈 {% elif forloop.last%} 這是最後一次迴圈 {% else %} {{k}} {% endif %} {% endfor %}
結果:這是第一次迴圈 name 這是最後一次迴圈
相關推薦
Django 學習筆記(五)模板標籤
關於Django模板標籤官方網址https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.IF標籤 Hello World/views.py 1 from django.shortcuts import render 2 3
Django 學習筆記(三)模板導入
文件 文件中 訪問 from lang sts class rom 網頁 本章內容是將一個html網頁放進模板中,並運行服務器將其展現出來。 平臺:windows平臺下Liunx子系統 目前的目錄: hello ├── manage.py ├── hello │ ├─
Django 學習筆記(三)模板匯入
本章內容是將一個html網頁放進模板中,並執行伺服器將其展現出來。 平臺:windows平臺下Liunx子系統 目前的目錄: hello ├── manage.py ├── hello │ ├── __init__.py │ ├── settings.py │ ├── urls.py │ └
Django 學習筆記(四)模板變數
關於Django模板變數官方網址:https://docs.djangoproject.com/en/1.11/ref/templates/builtins/ 1.傳入普通變數 在hello/Hello World/temlplates/index.html中,修改html檔案 <!DOCTYPE h
flask學習筆記(五)--模板中使用url_for
歡迎加入知了課堂,學習flask之前在檢視函式中使用url_for,實現從檢視函式中跳轉到另一個url。現在我為大家演示如何在模板中使用url_for,實現在頁面點選文字,跳轉至另一個頁面。其實很簡單一、方法1.首先通過檢視函式,渲染出一個頁面@app.route('/')d
Django 筆記(四)模板標籤 ~ 自定義過濾器
模板標籤: 標籤在渲染的過程中提供任意的邏輯 語法: 由{% ... %} 和 {% end... %} 常用標籤: with:類似取別名 模版繼承: Django模版引擎中最強大也是最
Latex學習筆記(五)——Latex模板學習總結
前言: 最近參加了數學建模大賽,整個論文都是使用Latex工具排版的,至此感覺到了它的魅力。但是由於論文模板是主辦方提供的,在排版格式定義檔案(.cls檔案)中已經設定好了所有環境,因此用起來還是很簡單的。比賽結束以後,打算學習模板的製作過程,因此研讀了該大
數據結構學習筆記(五) 樹的創建和遍歷
一個 後序遍歷 for -1 堆棧 nor ext cnblogs 復制 創建(先序創建和根據先序和中序進行創建)和遍歷(先序遍歷、中序遍歷、後序遍歷、非遞歸堆棧遍歷、層次遍歷): package tree; public class XianCreateTree
最優化學習筆記(五)牛頓法及擬牛頓法
div size -a article fonts alt water src jsb 最優化學習筆記(五)牛頓法及擬牛頓法
javascript學習筆記(五):異常捕獲和事件處理
log 類型 按鈕 輸入 button lan yellow logs 代碼 異常捕獲 Try{ 發生異常的代碼塊 }catch(err){ 異常信息處理 } 1 <!DOCTYPE html> 2 <html> 3 <head
Django學習筆記(一)——安裝,創建項目,配置
lvs csv oot url root import 方式 配置文件 函數 瘋狂的暑假學習之 Django學習筆記(一) 教材 書《The Django Book》 視頻:csvt Django視頻 1.創建項目
Spring 學習筆記(五)—— Bean之間的關系、作用域、自動裝配
mar byname pps etc 有時 sysman 對象實例 構造 encoding 繼承 Spring提供了配置信息的繼承機制,可以通過為<bean>元素指定parent值重用已有的<bean>元素的配置信息。 <?xml
Go語言學習筆記(五)文件操作
see 大小 unix rdo 筆記 不能 hid code lag 加 Golang學習 QQ群共同學習進步成家立業工作 ^-^ 群號:96933959 文件讀取 os.File 封裝了文件相關操作 type File File代表一個打開的文件對象。
Unity3D之Mecanim動畫系統學習筆記(五):Animator Controller
浮點 key 發現 菜單 融合 stat mon 好的 project 簡介 Animator Controller在Unity中是作為一種單獨的配置文件存在的文件類型,其後綴為controller,Animator Controller包含了以下幾種功能: 可以對
Python學習筆記(五)OOP
默認 tro acl 引入 支持 不同 post set 成像 模塊 使用模塊import 模塊名。有的僅僅導入了某個模塊的一個類或者函數,使用from 模塊名 import 函數或類名實現。為了避免模塊名沖突。Python引入了按文件夾來組織模塊的方
如鵬網學習筆記(五)MySql基礎
修改列 記錄 tex 令行 金額 升序 查詢 自動遞增 col MySQL基礎 一、數據庫概念 1,網友裝備信息、論壇帖子信息、QQ好友關系信息、學籍管理系統中的學生信息等都要“持久化”的保存到一個地方, 如果通過IO寫到文件中,那麽會非常麻煩,而且不利於多人共享數
docker學習筆記(五)——Docker常用命令總結
docker學習筆記 docker常用命令總結 1. 開啟/停止/重啟container(start/stop/restart)容器可以通過run新建一個來運行,也可以重新start已經停止的container,但start不能夠再指定容器啟動時運行的指令,因為docker只能有一個前臺進程。容器st
jQuery學習筆記(五)
加載 complete += ron 序列 border () ajaxstart 單選 jQuery與Ajax的應用 Ajax的優勢和不足 Ajax的優勢 a)不需要插件支持 b)優秀的用戶體驗 c)提高Web程序的性能 d)減輕服務器和寬帶的負擔 Ajax的不
流暢的python和cookbook學習筆記(五)
pytho col () 學習 util 學習筆記 取出 minute python 1.隨機選擇 python中生成隨機數使用random模塊。 1.從序列中隨機挑選元素,使用random.choice() >>> import random
Oracle 學習筆記(五)
采樣 flash 全表掃描 group space 表空間 manage 授權 個數 --表空間,auto: 自動管理, manual: 手動管理 create tablespace tsp1 datafile ‘D:\ORACLE\ORADATA\O10\tsp1.