可能已经在某个地方完成了,但让我再问一次。
我有这个用语言选择的选项来改变页面的语言
<form action="{% url 'set_language' %}" method="post">
{% csrf_token %}
<input name="next" type="hidden" value="{% trans request.path %}" />
<select name="language" class="langoption">
{% for lang in LANGUAGES %}
<option value="{{lang.0}}" {% if lang.0 == LANGUAGE_CODE %} selected {% endif %}>
{{lang.1}}
</option>
{% endfor %}
</select>
</form>
并且假设用户在页面/horoscope/
中,而我的urls.py有这样的面孔:
url(_(r'^horoscope/$'), TemplateView.as_view(template_name="horoskope.html"), name="horoscope"),
在.po文件中有"^horoscope/$"
的翻译:{{1}}(德语翻译)
如何,如果我将语言更改为德语,django会成功更改它,但我得到404页面,因为它正在重定向到"^horoskop/$"
,这在urls.py中不再存在...更改为{{1 }}。我该如何解决这个问题?
我试着给
/horoscope/
但它仍然是当前的语言。
感谢任何寻求帮助的人
答案 0 :(得分:0)
您是否可以访问“set_language”视图?在那里你可以控制重定向,你必须将'next'表单字段的给定值从前一种语言翻译成当前语言。