django過濾器filter
阿新 • • 發佈:2020-09-07
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}}
頁面效果: