Схема JSON с полем динамического ключа в MongoDB
Хотите иметь поддержку i18n для объектов, хранящихся в коллекции mongodb
В настоящее время наша схема выглядит так:
{
_id: "id"
name: "name"
localization: [{
lan: "en-US",
name: "name_in_english"
}, {
lan: "zh-TW",
name: "name_in_traditional_chinese"
}]
}
но я думаю, что это поле "LAN» является уникальным, могу ли я просто использовать это поле в качестве ключа, поэтому структура будет
{
_id: "id"
name: "name"
localization: {
"en-US": "name_in_english",
"zh-TW": "name_in_traditional_chinese"
}
}
который будет аккуратнее и проще для анализа (просто локализация [язык] получит значение, которое я хочу для конкретного языка).
Но тогда возникает вопрос: это хорошая практика для хранения данных в MongoDB? А как пройти проверку json-схемы?