#node.js #mongodb
Вопрос:
Я пытаюсь проверить, есть ли у моего пользователя определенное значение в столбце «Друзья».
Код, который я пытаюсь, это
exports.findFriend = async (userName, user) => {
return await User.findOne({ _id: user._id }, { friends:{ userName: userName } } });
};
Это не работает должным образом.
Ответ №1:
Вы должны использовать ключевое слово $elemMatch, потому что вы пытаетесь найти значение внутри массива
Используйте следующий код
exports.findFriend = async (userName, user) => {
return await User.findOne({ _id: user._id }, { friends: { $elemMatch: { userName: userName } } });
};
Комментарии:
1. Большое спасибо, это сработало идеально.