刷新后,列update()+ save()更改从数据库中消失之后

时间:2019-06-06 17:45:34

标签: node.js express sequelize.js

我有一个正在使用的Chrome扩展程序。当用户单击按钮时,他正在将字符串添加到User模型中的ManagedStores列(这是一个数组)。一切正常,在单击按钮时添加了一个字符串,但是一旦我关闭扩展窗口并重新打开它,就什么也没有保存,并且数组为空。我不确定为什么会这样...

我已经尝试使用user.synce(),但是什么也没发生

router.post("/addStore", async function(req, res) {
    const { email, name } = req.body;
    const user = await UsersService.getUserByEmail(email);

    if (user.managedStores.some(store => store.shopName === name)) {
        res.status(400);
        res.json({ message: "Store with that name is already saved for this user" });
        return;
    }
    await User.update(
        {
            managedStores: [
                ...user.managedStores,
                { 
                    userId: user.id,
                    shopName: name,
                }
            ]
        },
        {
            where: {
                userEmail: email,
            }
        }
    )
    await user.save();
    res.json({msg: 'Store was add'})
});

0 个答案:

没有答案