猫鼬数组未保存JSON对象

时间:2020-02-24 23:27:40

标签: arrays node.js json mongoose

我正在尝试将JSON对象保存在名为“图片”的用户架构数组中。 当我调用REST API路由保存对象时,它会保存,但是我之前在数组中保存的所有内容都会被删除。
为什么要删除数组中的先前元素?东西保存不正确吗? 我的架构的数组从数组中的默认4个空字符串开始。 排名是我要在其中存储新“图片”的数组中的索引。

这是API路线:

router.post('/uploadImage', tokenAuthorizer, async (req, res) => {
    let { rank, link } = req.body;
    const userID = req.id;

    try {
        let user = await User.findOne({ _id: userID });
        if (!user) throw new Error('Could not find user');

        // object to save
        const picture = {
            link: link,
            rank: rank,
        };

        // store at index 'rank'
        user.pictures[rank] = picture;

        await user.save();
        res.json({ msg: user });
    } catch (e) {
        console.log(e.message);
        res.status(500).json({ msg: e.message });
    }
});

0 个答案:

没有答案