我有一个法语和英语网站,非常基本。我创建了我的fr语言文件。我有一些翻译的字符串来测试这个以确保它的工作,但我很困惑,如何设置实际的链接交换语言。我已经按照这个,https://docs.djangoproject.com/en/1.3/topics/i18n/internationalization/#the-set-language-redirect-view但接收了404 / / /页面,我这样做是否正确?如果这有帮助,这是我的代码:
<form action="/i18n/setlang/" method="post">
{% csrf_token %}
<input name="next" type="hidden" value="/next/page/" />
<select name="language">
{% get_language_info_list for LANGUAGES as languages %}
{% for lang in LANGUAGES %}
{% if lang.0 != '' %}
<option value="{{lang.0}}">{{lang.1}}</option>
{% endif %}
{% endfor %}
</select>
<input type="submit" value="Go" />
</form>
我还添加了我的网址:
(r'^i18n/', include('django.conf.urls.i18n')),
我在我的中间件和语言设置中有这个:
'django.middleware.locale.LocaleMiddleware',
LANGUAGES = (
('en', 'English'),
('fr', 'French'),
)
我很困惑如何使这个工作,所以我可以在2种语言之间交换,或者,如果我正确地做,为什么我在尝试更改语言时会在/ next / page中收到404错误?
谢谢!
杰夫
答案 0 :(得分:1)
在这一行
<input name="next" type="hidden" value="/next/page/" />
在语言更改后,您必须将"/next/page/"
替换为要加载的页面。
如果您要加载同一页面,则应编写value=""
。