gpt4 book ai didi

python - 我将自定义语言添加到我的语言列表中

转载 作者:行者123 更新时间:2023-12-01 08:59:11 24 4
gpt4 key购买 nike

我在 Django 中添加自定义语言时遇到问题。这是settings.py的配置:

LANGUAGES = [
('en', 'English'),
('ru', 'Russian'),
('uz', 'Uzbek'),
]

EXTRA_LANG_INFO = {
'uz': {
'bidi': False,
'code': 'uz',
'name': 'Uzbek',
'name_local': "O'zbek",
},
}

import django.conf.locale
LANG_INFO = dict(django.conf.locale.LANG_INFO.items() + EXTRA_LANG_INFO.items())
django.conf.locale.LANG_INFO = LANG_INFO
global_settings.LANGUAGES = global_settings.LANGUAGES + [("uz", 'Uzbek')]

但我遇到以下错误:

unsupported operand type(s) for +: 'dict_items' and 'dict_items'    

我在 ubuntu 18.04 上使用 django 2.1 版和 pycharm 作为 IDE。实际上按照说明应该可以工作。

最佳答案

基本上,您不必先将 LANG_INFO 字典转换为键值对列表,然后将它们添加在一起。您可以做的只是使用新旧键值对字典创建一个新字典。我还建议用 LANGUAGES 装饰 name 以便将来翻译。我正在下面的修改版本中编写您的代码:

from django.utils.translation import gettext_noop

LANGUAGES = [
('en', gettext_noop('English')),
('ru', gettext_noop('Russian')),
('uz', gettext_noop('Uzbek')),
]

EXTRA_LANG_INFO = {
'uz': {
'bidi': False, # right-to-left
'code': 'uz',
'name': 'Uzbek',
'name_local': "O'zbek",
},
}

# Add custom languages not provided by Django
import django.conf.locale
LANG_INFO = dict(django.conf.locale.LANG_INFO, **EXTRA_LANG_INFO)
django.conf.locale.LANG_INFO = LANG_INFO

还有一件事,您不必覆盖 Django global_settings 中的 LANGUAGES 属性,因为您已经在项目设置中覆盖了它。所以这一行可以被忽略:

global_settings.LANGUAGES = global_settings.LANGUAGES + [("uz", 'Uzbek')]

关于python - 我将自定义语言添加到我的语言列表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52606576/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com