0

ドキュメントのset_languageリダイレクトビューフォームを使用します。

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>

アクション属性「/i18n/ setlang /」をurl-template-tagに置き換える正しい構文はどれですか?

編集:

インクルードで正しいURLを見つけました(ダニエルに感謝します!):

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

2 に答える 2

1

ドキュメントにあるように、ビューのフルパスを{% url %}パラメーターとして入力できます

{% url django.views.i18n.set_language %} # quote or unquote based on your Django version
于 2012-05-08T17:13:00.853 に答える
0

インクルードの URL は気にしません。インクルード内の URL は気にします。のコードまたはドキュメントを参照して、関心のある URLdjango.conf.urls.i18nを見つけ、その名前を使用する必要があります。setlang

于 2012-05-08T16:59:07.853 に答える