2016-11-24 43 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