django模板語言中的自定義函數


使用方法

在模板里面調用python內置的不帶參數的方法,只要在對象的后面加   .fun

如何在模板中調用帶參數的自定義函數:

  1. 在app中創建templatetags模塊
  2. 創建任意 .py 文件,如:xx.py       
  3. 在xx.py中編寫函數
    3.1  導入  fromdjango importtemplate 實現一個對象 register =template.Library()3.2,  
    3.2 編寫一個函數 並在函數前加上裝飾器  @register.filteer   或  @register.simple_tag
  4. 在要引入此函數的html文件頂部加上{% load xx%} 導入xx模塊
  5. 使用函數屬於@register.filter的函數調用{{"value" | fun:參數}},可以在if  else中做判斷條件
  6. 使用函數屬於@register.simple_tag的函數調用{%fun '參數1' '參數2' '參數3'%},不可以在if else中做判斷條件
  7. 一定要在注冊使用此函數的app

需要注意:

  • filter函數單獨使用時必須至少有一個傳入模板的對象作為參數,比如<h1>{{ st |fun1 }}</h1>
  • filter最多只要兩個參數<h1>{{ 參數1 |fun1:參數2 }}</h1>,且冒號后面不能有空格
  • simple_tag函數的參數如函數名用空格分開,單個空格和多個空格都可以
  • {% if  st|fun1  %}
    <p>happy</p>
    {% endif %} 作為條件語句不用加兩個花括號  


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM