2012-04-21 53 views
0

我在Django模板的導航欄中有很多很長的URL列表。如何削減Django模板中的url標記?

<a href="{% url animals.views.bear %}">The Big Bad Bear</a> 
<a href="{% url animals.views.cat %}">The Cat</a> 
<a href="{% url animals.views.dog %}">The Dog</a> 
... 

如何避免在每個網址模板標記之前重複animals.views.

回答

3

您可以使用with標籤:

{% with av=animals.views %} 
<a href="{% url av.bear %}">The Big Bad Bear</a> 
<a href="{% url av.cat %}">The Cat</a> 
<a href="{% url av.dog %}">The Dog</a> 
{% endwith %} 

正確的方法,但是,這是設置適當的名稱在您的網址confs,就像亞歷克斯描述。

2

你能說出你的網址:documentation

在urls.py:

import views 
urlpatterns = patterns('', 
    url(r'^bear/$', views.bear, name="bear"), 
    url(r'^cat/$', views.cat, name="cat"), 
    url(r'^dog/$', views.dog, name="dog"), 
    ... 
) 

那麼你的模板代碼如下:

<a href="{% url bear %}">The Big Bad Bear</a> 
<a href="{% url cat %}">The Cat</a> 
<a href="{% url dog %}">The Dog</a> 
... 

但請記住,這是方便易使用應用前綴命名您的網址,在您的案例中animal