自定義模板標籤

2021-09-14 01:22:59 字數 1270 閱讀 5829

原生標籤

django模板標籤(tags)的分類

******_tag (簡單標籤 : 處理資料,返回乙個字串或者給context設定或新增變數。

inclusion_tag (包含標籤) : 處理資料,返回乙個渲染過的模板。

熟悉django的都知道,我們一般在檢視view裡設定context,然後通過它來傳遞資料給模板。 乙個context是一系列變數和它們值的集合。通過使用******_tag, 我們可以在檢視外給context設定或新增變數。注: django 1.9以後不再支援assignment_tag了,均使用******_tag。

路徑結構

進入blog_tags.py,就可以寫自己的邏輯函式了,比如我要獲取最新的5個文章,只需要返回乙個列表就可以。

我的文章類是post,所以就從模型中引入了post類。

編寫函式,返回post列表,並用切片取出前5個資料,直接獲取的時候是從最早發布的文章到最新發布的文章這樣順序返回的列表,由於我在post類中的meta中指定了order_by是根據建立時間逆序排列的,所以本函式返回的就是最新的5條資料了。

post類的meta

匯入template模板包

例項化乙個libraty類

給函式加上@register.******_tag裝飾器,這樣函式就作為模板標籤可以被前端使用了。

首先要在.html最上方宣告標籤檔案,然後才能使用

[上傳中...(image.png-da66f5-1550814952384-0)]

最後就可以引用了

引用

thinkphp自定義模板標籤 一

thinkphp內建的foreach和include等模板標籤使用是非常方便的 但是內建的那些標籤只能滿足常用功能,個性化的功能就需要我們自己編寫自定義模板標籤了 下面就是要講解如何實現 示例環境 thinkphp3.2.3 thinkphp的模板標籤放在thinkphp library think...

thinkphp自定義模板標籤 二

上篇文章已經把自定義標籤的準備工作講完了 那麼接下來就是見證.的時候了 沒看如何配置的請先移步thinkphp自定義模板標籤 一 閉合標籤就是單標籤 比如a標籤 img標籤等等 非閉合標籤就是對標籤 比如div p標籤等等 這裡以自定義的ueditor和recommend標籤為例 自定義的閉合標籤比...

自定義標籤

由於字典的緣故,當前表中資料存的是字典表的code,所以在頁面顯示的時候需要再次進行轉換。於是我就想到了用標籤來解決這個問題。1.建立自己的標籤 public class displaytag extends tagsupport override public int doendtag throw...