现在就到这里。
“mongoengine-多语言领域”项目
用法:
from mongoengine import Document
from multilingual_field.fields import MultilingualStringField
class MyDoc(Document):
name = MultilingualStringField()
doc = MyDoc(name={'en': 'Hermitage', 'ru': u'Эрмитаж'})
doc.translate('en')
doc.name # 'Hermitage'
doc.translate('ru')
doc.name # u'Эрмитаж'
doc.translate('en')
doc.name = 'The Hermitage'
doc.name.translations # {'en_US.ISO8859-1': 'The Hermitage', 'ru_RU.UTF-8': u'Эрмитаж'}
这是它在 MongoDB 中的样子:
{
"_cls" : "MyDoc",
"_id" : ObjectId("5053ad4e3116b063001f6980"),
"_types" : [
"MyDoc"
],
"name" : [
{
"lang" : "ru_RU.UTF-8",
"value" : "Эрмитаж"
},
{
"lang" : "en_US.ISO8859-1",
"value" : "The Hermitage"
}
]
}
它允许(value, lang)
为快速值搜索定义有效索引,并使用规范化的语言环境名称作为语言代码。