url的url-tag包括

时间:2012-05-08 16:41:06

标签: django url django-templates

我使用文档中的the set_language redirect view表单。

urls.py

urlpatterns += patterns('',
    (r'^i18n/', include('django.conf.urls.i18n')),
)

模板:

<form action="/i18n/setlang/" method="post">
{% csrf_token %}
<input name="next" type="hidden" value="{{ redirect_to }}" />
<select name="language">
{% get_language_info_list for LANGUAGES as languages %}
{% for language in languages %}
<option value="{{ language.code }}">{{ language.name_local }} ({{ language.code }})</option>
{% endfor %}
</select>
<input type="submit" value="Go" />
</form>

使用url-template-tag替换action属性“/ i18n / setlang /”的正确语法是什么?

编辑:

我在包含中找到了正确的网址(感谢Daniel!):

<form action="{% url django.views.i18n.set_language %}" method="post">

2 个答案:

答案 0 :(得分:1)

作为documentation says,您可以输入视图的完整路径作为{% url %}参数

{% url django.views.i18n.set_language %} # quote or unquote based on your Django version

答案 1 :(得分:0)

您不关心include的URL,您关心include中的URL。您应该查看django.conf.urls.i18n的代码或文档,找到您感兴趣的setlang网址,然后使用该名称。