2017-07-29 75 views
1

所以我使用sequelize为一个简单的CRUD风格的网页。我的问题是我能够将输入的数据发送到mysql工作台的输入字段,并将其存储在表中,但在网页上本身没有任何反应。我的邮寄路线有问题吗?

//uses var=Posts which contains the fields userName 
 
//and userPosts in my database 
 
    var db = require("../models"); 
 
    
 
    // route to create posts 
 
    app.post("/api/posts", function(req, res) { 
 
    console.log(req.body); 
 
    db.Posts.create({ 
 
     userName: req.body.username, 
 
     userPosts: req.body.user_post, 
 
    }) 
 
    .then(function(dbPost) { 
 
     res.redirect('/dashboard'); 
 
     res.json(dbPost); 
 
    }); 
 
    });

在此先感谢您的帮助!

+0

哪个js框架你使用?什么时候触发?一旦你得到回应? – mygeea

+0

我正在使用node.js,handlebars和sequelize。我将页面重定向到用户在输入内容后提交的主页仪表板。如果我将重定向输出,则会跳转到显示以下内容的页面:{ “id”:7, “userName”:“2”, “userPosts”:“asdf”, “createdAt”:“2017- 07-29T01:27:12.000Z”, “updatedAt”: “2017-07-29T01:27:12.000Z” } – onetwothree

+0

尝试取出重定向,看看它是否显示。 – MinusFour

回答

0

网页本身没有任何反应

哪些网页?您成功的数据库操作是告诉应用程序重定向到/dashboard,但您也尝试发送JSON数据。我很惊讶你没有在你的应用程序中得到标题错误。您不能重定向到其他路由并同时向客户端发送数据。

您将需要重定向到/dashboard,然后你的仪表盘路线将不得不再次查询,以显示返回的数据。

+0

对不起,缺乏明确的我真的很新的这一点。我正在讨论的页面是应显示帖子的仪表板。我明白你的意思,但是如何重定向它并向它发送JSON数据是行不通的。我可以在dbPosts.create之前移动重定向吗? – onetwothree

+0

不,您的路线会重定向客户端,并且无法将数据添加到商店。您的api/posts POST路径只需要保存数据,然后重定向成功。您的仪表盘GET路线需要查询您的帖子模型(当然用户名),然后显示结果。 1路线= 1动作。 – Chase

+0

啊,非常感谢你! – onetwothree

0

我认为这里的问题是,你都在同一时间做res.json()发出res.redirect()。选择其中一个。