2016-11-24 32 views
0

我有一個自定義模板過濾器,與HTML標籤替換不同的降價,因此,例如,[b][/b]被替換<b></b>等 ,我需要更換的鏈接通過[video]降價與實際視頻標籤包圍的視頻。我發現了一個應用程序'django-embed-video',它可以處理所有可能的格式,並且可以嵌入youtube視頻。要使用它,我需要在模板中包含一個{% video %}標籤。 但有沒有辦法將該標籤作爲另一個標籤(我的過濾器)的返回值傳遞。你有什麼想法,我怎麼能做到這一點,而不需要從嵌入式視頻應用程序的邏輯複製到我的過濾器?如何從django中的標籤傳遞標籤?

編輯: 我忘記了,該標籤可以用作自定義模板標籤內的功能。

回答

1

您可以嘗試如下所示:在您的過濾器中將{%video%}替換爲[視頻]。獲取輸出字符串並將其輸入爲「安全」過濾器的輸入值。例如:

{% with html_string=different_markdown|your_filter %} 
    {{html_string|safe }} 
{% endwith %} 
+0

我試過了。標記呈現爲一個字符串。 – Stonecold

+0

我意識到,我可以使用標籤作爲功能。編輯了這個問題。 – Stonecold