在Django模板中,我尝试在使用urlize函数之后使用url过滤器,后者生成一个url,然后生成它的<a>标记。
不幸的是,各种使用(url myview)|urlize和类似实验的尝试都没有奏效。对于如何将这些片段组合起来使其正常工作,有什么想法吗?
谢谢!
发布于 2013-10-09 20:01:40
您需要将url分配给如下所示的变量:
{% url "myview" as my_url %}
{{ my_url|urlize }}您也可以使用{% filter %}来完成相同的任务,而无需先分配:
{% filter urlize %}{% url "myview" %}{% endfilter %}有了上面的海报,这样做就没有什么意义了。为什么不直接创建超链接本身,而不是依靠过滤器将url转换成超链接呢?
<a href="{% url "myview" %}">{% url "myview" %}</a>发布于 2013-10-09 15:02:31
这不是urlize的目的。它用于在文本块中搜索URL,并将它们转换为可点击的链接。{% url %}的结果甚至不像这样的链接,因为它是一个相对链接(例如/index/而不是www.example.com/index),而文档非常具体地说明了urlize寻找什么:
此模板标记适用于以
http://、https://或www.为前缀的链接。
不知道为什么要这样做:自己定义链接是很简单的:
This is my link: <a href="{% url 'myview' %}">My view</a>https://stackoverflow.com/questions/19275344
复制相似问题