MongoDB 3.6, как преобразовать строку в Object Id - PullRequest
0 голосов
/ 28 декабря 2018

Я работаю с MongoDB 3.6.Я пытаюсь выполнить агрегацию $ lookup, как показано ниже.

$ lookup

{

from: 'm_mtr',

localField: 'mtdid',

foreignField:' _id ',

as:' mm '

}

Это не работает для меня, так как' mtdid 'строка со значениями вроде '5bdbe5bcff10z046fcf8f04a'and' _id 'является полем Object Id со значениями типа' ObjectId ('5bdbe5bcff10z046fcf8f04a') '.

Есть ли способ конвертировать строку в ObjectId?Я знаю, что это возможно в Mongodb 4.0.К сожалению, у меня нет возможности использовать что-либо кроме 3.6.

Ответы [ 2 ]

0 голосов
/ 28 декабря 2018

Это открытый выпуск MongoDB, выпущенный в 4.0, вы должны попробовать перейти на 4.0, так как он имеет больше функций и, конечно, не оказывает существенного влияния из-за миграции.

https://jira.mongodb.org/browse/SERVER-22781

0 голосов
/ 28 декабря 2018

В мангусте вы можете использовать эту функцию:

let id = new mongoose.Types.ObjectId('5bdbe5bcff10z046fcf8f04a');
...