Node.js 我正在尝试更新我的数据库,但它没有更新,并且查询在CMD中是正确的

Node.js 我正在尝试更新我的数据库,但它没有更新,并且查询在CMD中是正确的,node.js,express,sequelize.js,Node.js,Express,Sequelize.js,执行(默认):选择id,title,slug,内容,排序,创建数据,从页面更新数据作为页面其中页面id='51'; 执行(默认):更新页面设置标题='gaffer',slug='home',内容='home testingaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

执行(默认):选择
id
title
slug
内容
排序
创建数据
页面
更新数据
作为
页面
其中
页面
id='51'; 执行(默认):更新
页面
设置
标题
='gaffer',
slug
='home',
内容
='home testingaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

主要问题是,当我获取编辑表单时,它会在API中给我id,因为我为它编写了代码,但当我更新它时,它会给我id,这是我的SLUG,这就是为什么我的数据库没有更新的原因。任何帮助都将不胜感激。

            /*
            * GET Editing page
            */
            router.get('/edit-page/:id', function (req, res) {


                models.Page.findOne({
                    where: {
                        id:req.params.id
                    }         
                })
                .then(function(page){
                       id=page.id,
                       title=page.title,
                       slug=page.slug,
                       content=page.content
                })
                .then(function(){
                    res.render('admin/edit_page');
                })
                    .catch(function(err){
                    console.log(err);

            })
        });
        /*
        * POST Edit Page
        */
        router.post('/edit-page/:id', function (req, res) {

        req.checkBody('title', 'Title must have a value.').notEmpty();
        req.checkBody('content', 'Content must have a value.').notEmpty();

        var title = req.body.title;
        var slug = req.body.slug.replace(/\s+/g, '-').toLowerCase();
        // if (slug == " ")
        //     slug = title.replace(/\s+/g, '-').toLowerCase();
        var content = req.body.content;
        var id = req.body.id;

        var condition={
            where:
            {id:req.params.id}
        };
        var values={
            title:req.body.title,
            slug:req.body.slug,
            content:req.body.content
        };
        options={multi:true};
        var errors = req.validationErrors();

        if (errors) {
            res.render('admin/edit_page', {
                errors: errors,
                title: title,
                slug: slug,
                content: content,
                id:id
            });
        } else {
            // models.Page.find({
            //     where: {
            //         id:req.params.id
            //     }         
            // })
            // .then(function(page){
            //     if(Page){
                models.Page.update(values,{...condition,...options})  //ES6 sprade operator       

                .then(function(page){

                    res.render('admin/pages');

                })
                .catch(function(err){
                    console.log(err);
                })
            }
            });

无法正确理解您所说的“我的鼻涕虫”是什么意思这就是为什么我的数据库没有更新。如果您能提供帮助,我们将不胜感激?你的意思是你的req.params.id在我的代码中是slug吗?我写id=req.params.id,我的slug是req.body.slug,当我返回真实的url时,但是调用更新方法时,id应该是id=1,但是id='home'你能做控制台吗?登录
{…条件,…选项}
看看你得到了什么输出?同时检查你的post url,这是返回的slug吗?谢谢兄弟,它已经被解决了,id正在“回家”,我从req.params.id改为req.body.id