Javascript 如何使用mongoDB和node.js重定向到查看页面
我对Javascript 如何使用mongoDB和node.js重定向到查看页面,javascript,node.js,mongodb,pug,Javascript,Node.js,Mongodb,Pug,我对node.js、mongoDB和jade都是新手 要重定向到userlist页面,我在/routes/index.js router.get('/userlist', function(req, res) { var db = req.db; var collection = db.get('usercollection'); collection.find({},{},function(e,docs){ res.render('userlist',
node.js
、mongoDB
和jade
都是新手
要重定向到userlist
页面,我在/routes/index.js
router.get('/userlist', function(req, res) {
var db = req.db;
var collection = db.get('usercollection');
collection.find({},{},function(e,docs){
res.render('userlist', {
"userlist" : docs
});
});
});
此路由将我重定向到userlist
页面。在那里我显示了所有用户的列表。我在每条记录上都有一个链接,可以查看详细信息:
下面是我的userlist.jade
extends layout
block content
h1.
User List
ul
each user, i in userlist
li
a(href="/viewuser/id/#{user._id}")=user.username
这:
给我:
<a href="/viewuser/id/56aca898d9b0de79214ae381">Dhara</a>
现在我不知道点击链接时查看详细信息的路线应该是什么,以及如何为查看屏幕获取选定的记录数据。我使用了一个清晰的分布式堆栈MEAN.js,它将帮助您构建安全且良好的编程应用程序 这是我获取具体用户数据的方式。它比你的代码传播得更广一些,但很清楚 希望有帮助 routes.js
app.use('/api/users', require('./api/user'));
var controller = require('./user.controller');
router.get('users/:id', controller.show);
var controller = require('./user.controller');
router.get('viewuser/id/:id', controller.show);
api/user/index.js
app.use('/api/users', require('./api/user'));
var controller = require('./user.controller');
router.get('users/:id', controller.show);
var controller = require('./user.controller');
router.get('viewuser/id/:id', controller.show);
user.controller.js:
// Get a single user
exports.show = function(req, res) {
User.findById(req.params.id, function (err, user) {
if(err) { return handleError(res, err); }
if(!user) { return res.send(404); }
return res.json(user);
});
};
// Get a single user
exports.show = function(req, res) {
User.findById(req.params.id, function (err, user) {
if(err) { return handleError(res, err); }
if(!user) { return res.send(404); }
return res.json(user);
});
};
然后,我将调用一个url类似于users/xxxxxx
的用户,其中xxxx是用户id。如果您想像/viewuser/id/xxxxxx
这样做,您需要像这样更改路由:
api/user/index.js
app.use('/api/users', require('./api/user'));
var controller = require('./user.controller');
router.get('users/:id', controller.show);
var controller = require('./user.controller');
router.get('viewuser/id/:id', controller.show);
user.controller.js:
// Get a single user
exports.show = function(req, res) {
User.findById(req.params.id, function (err, user) {
if(err) { return handleError(res, err); }
if(!user) { return res.send(404); }
return res.json(user);
});
};
// Get a single user
exports.show = function(req, res) {
User.findById(req.params.id, function (err, user) {
if(err) { return handleError(res, err); }
if(!user) { return res.send(404); }
return res.json(user);
});
};
可能需要在应用服务器文件中指定视图
app.get('/userlist',函数(req,res){
res.render('userlist'{
标题:“你的标题”
});
});代码>
我希望能有所帮助 谢谢@Alejandro它帮助了我。欢迎你!!!我强烈建议使用那种堆栈!!!它们是正确分布的,将帮助您了解均值的可能性!