2015-05-01 33 views
1

我是新來的節點和mongodb,我想提交表單後顯示數據,但我得到了blang頁面。
app.js在節點js中提交後重定向用戶

app.post("/new", function(req, res){ 
    new user({ 
     _id : req.body.email, 
     name: req.body.name, 
     age : req.body.age 
    }).save(function(err, doc){ 
      if(err){ 
       res.json(err); 
      }else{ 
       res.redirect("/view"); 
      } 
     }); 
    console.log(res); 

}); 

app.get("/view", function(req, res){ 
    user.find({}, function(err, doc){ 
     if(err) res.json(err) 
     else  res.render("view", {users:doc}); 
    }); 
}); 

view.jade

extends layout 
ul 
each user in users 
    li #{user.name} 

在view.jade我什麼也沒得到,甚至在身體的HTML標記。

+0

提交表單後,您可以手動確認數據是否正在通過執行命令'db.user.find()'保存關閉蒙戈殼? – chridam

+0

我還沒有在mongo shell中嘗試過,但我在/用戶和數據保存成功顯示數據 – sani

+0

如何提交數據到app.post。如果你通過客戶端上的Javascript來做到這一點,你需要通過window.href手動重定向 – vanadium23

回答

0

我假設你正在使用快遞,這可能是你在找什麼:

例如,從http://example.com/blog/admin/(注意尾部的斜槓),下面會重定向到URL http://example.com/blog/admin/post/new

res.redirect('/view'); 

在您的例子,這將是:

app.post("/new", function(req, res){ 
    new user({ 
     _id : req.body.email, 
     name: req.body.name, 
     age : req.body.age 
    }).save(function(err, doc){ 
      if(err){ 
       res.json(err); 
      }else{ 
       res.redirect("/view"); 
      } 
     }); 
    console.log(res); 
    res.redirect('/view'); //here the redirect takes place 
});