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

Не добавляется объект в массив?

Добавляю в массив:
router.post('/add/post/:id', async(req, res) => {
    try {
        const {text, img} = await req.body;
        const user = await User.findById(req.params.id);

        await User.updateOne({
            firstName: user.firstName,
            lastName: user.lastName,
            email: user.email,
            password: user.password,
            background: user.background,
            photo: user.photo,
            followers: user.followers,
            posts: []
        },
        {$push: {'posts': {$each: [text, img]}}});

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


Но добавляется в posts только елементы массива, а не объекты, также они добавляются только один раз, а нужно хоть сколько.
  • Вопрос задан
  • 51 просмотр
Решения вопроса 1
@aleshaykovlev Автор вопроса
html, css, js, node, webpack, sass, react
router.post('/add/post/:id', async(req, res) => {
    try {
        const {text, img} = await req.body;
        const user = await User.findById(req.params.id);

        await User.updateOne({
            firstName: user.firstName,
            lastName: user.lastName,
            email: user.email,
            password: user.password,
            background: user.background,
            photo: user.photo,
            followers: user.followers
        },
        {$push: {posts: {$each: [{text, img}]}}});

        res.redirect('/profile/'+user._id);
    } catch (e) {
        console.log('error ' + e);
    }
})
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы