我正在尝试使用 Django 和 Python 创建一个双语言(意大利语和英语)网站。我已经按照这个小教程进行了操作,但我陷入了疑问。
我不想要该站点的任何数据库(既不是管理页面),所以我删除了 settings.py 中的数据库设置部分,然后我激活了“USE_I18N = True”和ugettext以及其他所有内容。实际上,当我转到localhost时,它会正确显示两种语言的翻译,/it/和/en/放在localhost:8000之后。
我现在正在尝试制作一个用于切换语言的按钮,将djangoproject代码添加到我的模板文件中,这里:
{% load i18n %}
<form action="{% url 'set_language' %}" method="post">
{% csrf_token %}
<input name="next" type="hidden" value="{{ redirect_to }}" />
<select name="language">
{% get_current_language as LANGUAGE_CODE %}
{% get_available_languages as LANGUAGES %}
{% get_language_info_list for LANGUAGES as languages %}
{% for language in languages %}
<option value="{{ language.code }}"{% if language.code == LANGUAGE_CODE %} selected="selected"{% endif %}>
{{ language.name_local }} ({{ language.code }})
</option>
{% endfor %}
</select>
<input type="submit" value="Go" />
</form>
问题是当我从下拉菜单中选择一种语言时,会出现错误
ImproperlyConfigured at /it/i18n/setlang/
settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.
Request Method: POST
Request URL: http://localhost:8000/it/i18n/setlang/
Django Version: 1.8.2
Exception Type: ImproperlyConfigured
Exception Value:
settings.DATABASES is improperly configured. Please supply the ENGINE value. Check settings documentation for more details.
这是应用程序树:
sito_personale --- locale --- en --- LC_MESSAGES --- django.mo
--- django.po
--- it --- LC_MESSAGES --- django.mo
--- django.po
--- pages --- migration
--- static
--- templates
--- sito_personale
--- manage.py
我能做些什么来解决这个问题吗?
我非常感谢您能提供的任何帮助。