@aleshaykovlev
html, css, js, node, webpack, sass, react

Создается 2 объекта в бд, почему?

Получаю данные с клиента и обновляю массив книг пользователя, добавляя туда текст книги ее название и тд, но создается отдельно один объект с текстом и другой без него, что не так я сделал?

router.post('/profile/:id/book', async(req, res) => {
    try {
        // get info from client
        const {name, img, textBook} = req.body;
        
        // search user
        const user = await User.findById(req.params.id);

        // update finded user
        await User.updateOne({
            email: user.email
        }, {
            $push: {
                books: {$each: [{
                    name,
                    img,
                    text: textBook,
                    author: `${user.firstName} ${user.lastName}`,
                    authorID: user._id
                }], $position: 0}
            }
        });

        res.redirect('/profile/'+user._id);
    } catch (e) {
        console.log(e.message);
    }
})


60352e9da5485396726526.png
  • Вопрос задан
  • 48 просмотров
Пригласить эксперта
Ответы на вопрос 1
@gsaw
Ну судя по всему у вас две разные записи, с разным name. Я думаю все ок у вас с кодом, скорее проблема с данными.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы