#next.js #next-auth
#next.js #далее-авт
Вопрос:
Я использую NextAuth для своего приложения Nextjs/ MongoDB. Я получаю ошибку, когда пытаюсь запросить запись пользователя в файле Api.
import Users from '../../../model/user'; let userId = query.id; const userData = await Users.findOne({_id:userId}); console.log('userData ',userData);
Я получаю следующую ошибку :
error : _model_user__WEBPACK_IMPORTED_MODULE_1__.default.findOne is not a function
Ответ №1:
- Что такое
query
? Я думаю , вам это нужноreq.query.id
, потому что у вас естьreq
иres
в запросах API, и в ответах - Вам нужно преобразовать свой
userId
вObjectId
import Users from '../../../model/user'; import { ObjectId } from 'bson'; ...your method of handler, eg get, post, delete etc //if you have name [id].tsx, for [pid].tsx you need req.query.pid let userId = req.query.id; //you need to transform only if you are searching by _id field const userData = await Users.findOne({"_id": ObjectId(userId)}); if (userData.?_id){ res.status(200).json(userData) } else{ res.status(500).json('User data not found') }