使用django创建多语言网站
creating multi-lingual website using django
我正在从头开始创建一个网站,并计划使其动态地支持多种语言。我使用的工具是:
- MongoDB 我的数据库(图集)
- pymongo 连接到数据库
- django 作为我的框架环境
我的想法是拥有一个可以根据需要提供多种语言的网站。语言可以是 RTL 和 LTR。我可以以 json 文件的形式添加任何语言,其中有一个项目反对将其翻译成所需的语言,例如英语-法语 json 文件将是:
{"door":"porte"}
{"direction": "LTR"}
通过添加这样的文件,我的网站应该能够获得有关法语的正确信息,并且所有内容都应该按照 json 文件中的规定正确显示为法语。我计划在我的数据库中为每个网站页面设置两种类型的 html 页面;一种用于“RTL”,一种用于“LTR”,我根据用户的要求呈现它们。 (在前端选择的语言)。在翻译过程中,在选择正确的语言方向后,我在我的 html 中使用 django 模板变量来放置正确的语言,使用正确的 json 语言文件,我所有的 json文件存储在数据库中,并通过用户选择的所需语言检索。
我有几个问题:
- 我的思考方向正确吗?!或者我正在重新发明轮子,还有其他工具可以为我完成这项工作?!
- 国际网站有最佳实践吗?!
- 是否有任何工具可以帮助更轻松地做到这一点?
非常感谢任何建议或意见。
谢谢
你绝对是在重新发明轮子。 Django 已经带有 i18n 支持。
这适用于几乎所有元素。
如此处所述:
https://docs.djangoproject.com/en/3.1/topics/i18n/
我个人建议使用 gettext_lazy(),因为它使事情变得更容易,但这只是我的口味。
当然还有一个名为{% trans "Whatever" %}的模板标签
您最终会得到可以简单编辑的文本文件,如果您想要精美的用户界面,也可以使用 SaaS。
我正在从头开始创建一个网站,并计划使其动态地支持多种语言。我使用的工具是:
- MongoDB 我的数据库(图集)
- pymongo 连接到数据库
- django 作为我的框架环境
我的想法是拥有一个可以根据需要提供多种语言的网站。语言可以是 RTL 和 LTR。我可以以 json 文件的形式添加任何语言,其中有一个项目反对将其翻译成所需的语言,例如英语-法语 json 文件将是:
{"door":"porte"}
{"direction": "LTR"}
通过添加这样的文件,我的网站应该能够获得有关法语的正确信息,并且所有内容都应该按照 json 文件中的规定正确显示为法语。我计划在我的数据库中为每个网站页面设置两种类型的 html 页面;一种用于“RTL”,一种用于“LTR”,我根据用户的要求呈现它们。 (在前端选择的语言)。在翻译过程中,在选择正确的语言方向后,我在我的 html 中使用 django 模板变量来放置正确的语言,使用正确的 json 语言文件,我所有的 json文件存储在数据库中,并通过用户选择的所需语言检索。
我有几个问题:
- 我的思考方向正确吗?!或者我正在重新发明轮子,还有其他工具可以为我完成这项工作?!
- 国际网站有最佳实践吗?!
- 是否有任何工具可以帮助更轻松地做到这一点?
非常感谢任何建议或意见。
谢谢
你绝对是在重新发明轮子。 Django 已经带有 i18n 支持。 这适用于几乎所有元素。
如此处所述: https://docs.djangoproject.com/en/3.1/topics/i18n/
我个人建议使用 gettext_lazy(),因为它使事情变得更容易,但这只是我的口味。
当然还有一个名为{% trans "Whatever" %}的模板标签
您最终会得到可以简单编辑的文本文件,如果您想要精美的用户界面,也可以使用 SaaS。