У меня есть коллекция в MongoDB, где поля вложенной под корень языка:Выберите вложенные поля в Монго дб
{
en: {
title: "eng title",
content: "eng content",
},
it: {
title: "it title",
content: "it content"
}
//common attributes for all languages
images: {
mainImage: "dataURL",
thumbImage: "dataURL"
}
}
У меня есть переменная с именем «currentLang»; Мне нужно найти документ по названию, выбрав только объект currentLang и общие поля (изображения в этом примере); , но для объекта currentLang я хотел бы, чтобы выходной документ не был вложен; например, имея currentLang = "EN"
желаемый результат:
{
title: "eng title",
content: "eng content",
images: {
mainImage: "dataURL",
thumbImage: "dataURL"
}
}
Возможно ли это?
Этом это именно тот код, который я использую сейчас; но выходной документ все еще вложен в «en»; Я хотел бы иметь все поля в корневом элементе, например, желаемый вывод, написанный выше –
@CerealKiller. Затем вам нужно заполнить, спроецировать поле с псевдонимом. См. Обновленный ответ. – BatScream
Хорошо, это правильно; к сожалению, я использую mongo внутри Meteor.js, где агрегация, похоже, не поддерживается; извините, когда я написал вопрос, я не знал, что ... –