我正在使用Django,我想在用户单击按钮时更改网站语言。我可以使用{% get_current_language as LANGUAGE_CODE %}
获取当前语言代码,但如何从模板中更改它?
答案 0 :(得分:2)
<form name="setLangEnglish" action="/i18n/setlang/" method="POST">
{% csrf_token %}
<input name="next" type="hidden" value="{{request.path}}"/>
<input type="hidden" name="language" value="en"/>
</form>
这个表单实际上做的是将当前语言改为“en”,这是英语。由于这个表单输入类型是隐藏的,你不会在html中看到表单。你需要做的是找出你想要改变语言的方式(点击文字或点击国家标志。)。这是一个用点击文字改变语言的例子。
<a onclick="document.setLangEnglish.submit();return false;">ENG</a>
只要用户点击“ENG”,此代码就会提交上面的表单。为了使其正常运行,请确保url(r'^i18n/',include('django.conf.urls.i18n')),
中有urls.py
。