在Django模板中,我試圖在使用url
函數之後立即使用urlize
篩選器,該函數正在生成一個url並隨後生成其標記<a>
。如何在模板的url函數上使用urlize過濾器?
不幸的是,使用(url myview)|urlize
和類似實驗的各種嘗試都沒有奏效。關於如何將這些作品拼湊在一起以使作品發揮作用的任何想法?
謝謝!
在Django模板中,我試圖在使用url
函數之後立即使用urlize
篩選器,該函數正在生成一個url並隨後生成其標記<a>
。如何在模板的url函數上使用urlize過濾器?
不幸的是,使用(url myview)|urlize
和類似實驗的各種嘗試都沒有奏效。關於如何將這些作品拼湊在一起以使作品發揮作用的任何想法?
謝謝!
您需要的URL分配給一個變量,像這樣:
{% url "myview" as my_url %}
{{ my_url|urlize }}
您也可以只使用{% filter %}
來完成相同操作,而不先指定:
{% filter urlize %}{% url "myview" %}{% endfilter %}
有了上面的海報,做任何這些都沒有多大意義。爲什麼不只是創建超鏈接本身,而不是依賴過濾器從URL轉換爲超鏈接?
<a href="{% url "myview" %}">{% url "myview" %}</a>
這不是urlize
的用途。它用於在文本塊內搜索URL並將其轉換爲可點擊的鏈接。該{% url %}
的結果甚至沒有像那樣的一個環節,因爲它是一個相對鏈接(如/index/
而不是www.example.com/index
),以及文檔是非常具體什麼urlize
查找:
此模板標籤適用於前綴爲
http://
,https://
或www.
的鏈接。
不知道爲什麼你會無論如何想要它:它是微不足道的自己定義的鏈接:
This is my link: <a href="{% url 'myview' %}">My view</a>
嗨,謝謝你的提示。你知道有什麼方法從視圖名稱中自動創建鏈接嗎?因爲這就是我想要的,使用urlize過濾器的自動化。 – fstab