【发布时间】:2012-06-05 13:53:10
【问题描述】:
我正在尝试使用内置的 i18n 翻译 django 应用程序。我已经根据教程标记了要翻译和创建的文本并编译了语言文件(.po/.mo)并且没有错误。我还在设置文件中将USE_I18N 更改为true,并按照教程的说明将以下行添加到urls.py 中:
(r'^i18n/', include('django.conf.urls.i18n')),
我还按照教程的说明在 settings.py 中定义了允许的语言列表。
然后我创建了一个新的页面 html 模板并复制了教程为语言选择页面提供的代码:
<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>
该页面也可以正常工作,但是当我单击“Go”时,它告诉我加载页面时出错:
Failed to load resource:http://localhost:8000/i18n/setlang/
the server responded with a status of 404 (NOT FOUND)
我尝试通过用链接替换变量来更改重定向,但这给了我相同的结果。我尝试更改表单操作路径和 urls.py,以防有一些双重命名,这给了我同样的错误。
我一直在阅读教程和自述文件,以及一些 i18n 文件,但似乎找不到它不起作用的原因,我真的很感谢你的回答。谢谢你
【问题讨论】:
标签: django localization internationalization translation