Не создается объект пользователя
Модель пользователя:
const user = new Schema({
photo: {
type: String,
required: true,
default: '/no-photo.jpg'
},
name: {
type: String,
required: true,
unique: true
},
email: {
type: String,
required: true,
unique: true
},
password: {
type: String,
required: true
},
posts: [{ type: mongoose.Types.ObjectId, ref: 'post' }]
})
Модель поста:
const post = new Schema({
userId: {
type: mongoose.Types.ObjectId,
ref: 'user'
},
user: {
type: Object,
ref: 'user'
},
text: {
type: String,
required: true
},
date: {
type: Date,
required: true
},
likes: {
type: Number,
default: 0,
required: true
},
dislikes: {
type: Number,
default: 0,
required: true
},
comments: [{ type: mongoose.Types.ObjectId, ref: 'comment' }]
})
Добавляю пост вот так:
router.post('/post/:id', async (req, res) => {
try {
const { text } = req.body;
const findUser = await User.findById(req.params.id);
const newPost = new Post({
userId: findUser._id,
user: findUser,
text,
date: new Date(),
comments: []
})
await newPost.save();
res.redirect('/');
} catch (e) {
res.status(404).json({ message: e.message });
}
})
Нужно, чтобы создался объект пользователя, в посте, который этот пост и написал, а у меня 2 id: Нужно, чтобы вместо user : 60c4c82456e0d31d44337344 был объект пользователя. Я новичок в бэкенде, поэтому могу тупить в некоторых вещах
_id : 60c4c83456e0d31d44337345
likes : 0
dislikes : 0
comments : Array
userId : 60c4c82456e0d31d44337344
user : 60c4c82456e0d31d44337344
text : "message"
date : 2021-06-12T14:44:04.539+00:00
__v : 0
Ответы (1 шт):
Автор решения: Алексей Яковлев
→ Ссылка
В модели поста:
user: {
type: Object,
required: true
}
И при создании поста передал объект пользователя