1. 程式人生 > 實用技巧 >django過濾器filter

django過濾器filter

views.py

def index(request):
    print("index,....")
    navs = '今天天氣很好今天是週一啊'
    title1 = 'today'
    title2 = 'TODAY'
    tmp_html = '<h1>h1test</h1>'
    articles = models.Article.objects.all()
    return render(request,'index.html',{'articles':articles,'navs':navs,'title1':title1,'title2':title2,'tmp_html':tmp_html})


index.html
{# django自帶過濾器filter,可以對服務端返回的資料進一步加工#} {{navs}}<br> {# 獲取長度#} {# length是django自帶的過濾器,在使用{{navs|length}}實際是將navs傳遞給length,由length返回當前變數長度#} {{navs|length}}<br> {# 獲取第一個元素#} {{navs.0}}<br> {# 包括...在內超過6個字元就省略後面的#} {# 數字6代表頁面要顯示幾個字元,其中還包括3個點#} {# truncatechars是個方法,navs 當作第一個引數傳遞給truncatechars,6當作第二個方法傳遞給truncatechars #} {# 注:filter最多隻能接受2個引數#} {{navs|truncatechars:6}}<br> {# 切片#} {{navs|slice:"0:8"}}<br> {# 拼接,如果是字串則每個字串中間用=號相連#} {{navs|join:"="}}<br> {# 如果後臺沒有返回則顯示預設引數#} {{navs|default:"管理員"}}<br> {# 小寫#} {{title2|lower}}<br> {# 大寫#} {{title1|upper}}<br> {# 如果返回的資料是標籤格式,用safe則能把標籤裡面的內容渲染到前端頁面上,如果不用safe,則返回的是views裡原封不動定義的內容}#} {{tmp_html|safe}}

  頁面效果: