1. 程式人生 > >python - django (模板)

python - django (模板)

標簽 form echars emp first files 倒序 pre 默認

"""
# Django 的模板語言

# 1. 變量
# {{ name }}
      # 直接在 括號中寫傳入的變量


# 2. for 循環
# { % for in in xxx % }     # 開始
#   {{ forloop.counter }}
#   {{ forloop.last }}
#   {{ i }}
# { % endfor % }        # 結束循環


# 3. if 判斷
# { % if x > x % }          # 開始判斷
#   這裏寫判斷成立的 代碼
# { % elif % }
#   ... 
# { % else % }
#   ...
# { % endif % }         # 結束判斷


# 4. if .. in  判斷
{ % if xx in xx % }
    xxx
{ % else % }
    xxx
{ % endif % }


# 5. 設置默認值
{{ 變量名|default:‘如果沒有找到變量,則使用這段文字‘ }}

# 6. 返回長度 length
{{ 變量|length }}

# 7. 返回文件大小 (xxx.MB)
{{ 變量|filesizeformat }}

# 8. 切片
{{ 變量|slice:‘1:-1‘ }}

# 9. 時間格式化
{{ 時間戳變量|date:‘Y-m-d H:i:s‘ }}

# 10. 解析標簽 - 將標簽轉成可識別的標簽
{{ 變量名|safe }} 

# 11. 將多出的文字 用 ... 來表示( 可限定文字超出長度 )
{{ 變量名|truncatechars:10 }}  
            # 對前面的變量進行截取
            
# 12. 自定義 filter( 詳細看 web05 )
path:
    C:\Users\ad\PycharmProjects\index\1\py21-Django-Web\web05\app05\templatetags\myfilter.py

# 13. 
    a. forloop.counter  --  從1開始的索引值    (將索引正序打印)    
    b. forloop.counter0 --  從0開始的索引值    (將索引正序打印)
    
    c. forloop.revcounter - 倒序索引值 從1開始  (將索引倒序打印)
    d. forloop.revcounter0- 倒序索引值 從0開始  (將索引倒序打印)
    
    e. forloop.first  -- 當前循環是不是第一次循環  (布爾值)
    f. forloop.last  --  當前循環是不是最後一次循環(布爾值)
    
    g. forloop.parentloop - 本層循環的外層循環
            # 在第二層循環中 無法 forloop.counter 到第一層的循環
            # 但是可以用 forloop.parentloop.counter 來解決
    
    
# 14. with 語句
{{ with name=name_list.1.1 }}
    {{ name }}      # 可以用 name 代替 name_list.1.1
{% endwith %}


# 15. 註釋
{# 這裏是註釋的內容 #}
    
"""

python - django (模板)