在Django中以多种语言提供页面的最佳方法是什么?我已按照文档使用LANGUAGES
,但我看不到翻译的页面。
我被困住了。我应该自己管理/en
,/de
等网址吗?
提前致谢。
答案 0 :(得分:1)
使用Django国际化,它在django中 首先在django项目中创建一个“locale”文件夹,然后在settings.py包含文件夹路径中。 例如-LOCALE_PATHS = “projectpath /区域设置”
在settings.py中将此添加到您的中间件 - 'django.middleware.locale.LocaleMiddleware' 并在settings.py中设置USE_I18N = True
之后在settings.py中包含此“django.core.context_processors.i18n”,在模板上下文处理器中
对于html文件 - : 首先,您必须包含Internationalization的模板标记,然后您可以在html文件的所有静态元素中使用模板标记 例如- {%load i18n%}把它放在你的html文件之上 并尝试这个
{%trans“将静态文字放在此处”%} 该页面中的静态文字
如果在Django中有模板变量,你可以使用这个 - {%blocktrans%}这是您翻译的{{object}} {%endblocktrans%}
现在对于django观点,你必须遵循这个 - :
从django.utils.translation导入ugettext为_
def视图(请求): output = _(“这是翻译文本”) 返回HttpResponse(输出)