简体   繁体   English

在服务器和客户端之间传递数据(node.js + mongodb)

[英]passing data between server and client (node.js + mongodb)

I'm working with node.js express and mongodb, I have a input data from client, I need to pass the data to server look for its property and send to the client in another page. 我正在使用node.js express和mongodb,我从客户端输入了数据,我需要将数据传递到服务器以查找其属性,然后在另一页中发送给客户端。

Now I have problem with req.body.age that suppossed to get the data from client's input and use find() to get its appropriate property. 现在我req.body.age了req.body.age的问题,该问题req.body.age是从客户端的输入中获取数据,并使用find()获得其适当的属性。

Server side code: 服务器端代码:

functions are routed in another .js file 函数在另一个.js文件中路由

exports.find_user = function(req, res) {
    res.render('find_user.jade');
};


exports.user = function(req, res){
    member = new memberModel();
    member.desc.age = req.body.age; //problem
    console.log(req.body.age);  //undefined 
    memberModel.find({desc: {age: '7'}}, function(err, docs){
        res.render('user.jade', { members: docs });
    console.log(docs);
});
};

memberModel.find({desc: {age: '7'}} just hardcode picking up user with age 7 (works) memberModel.find({desc: {age: '7'}}只是硬编码选择7岁以上的用户(有效)

client side code (jade): 客户端代码(玉器):

page for data input: 数据输入页面:

find_user.jade find_user.jade

form(action='/', method='post')
    fieldset
        lable(for="age") Find user by age: 
            input(type="text", size="30", name="age", required="required")
            input(type='button', value='Find', onclick='location.href=\'find_user/user/\'')

page for data output with its property: 具有属性的数据输出页面:

user.jade user.jade

        tr
            th Name
            th Age
    tbody
    - members.forEach(function(member){
        tr
            td= member['name']
            td= member['desc']
     - });

You are not submitting your data in find_user.jade file when the user clicks the button. 用户单击按钮时,不会将数据提交到find_user.jade文件中。 Instead, the client is only redirected to another page. 而是,客户端仅重定向到另一个页面。

This is how your find_user.jade file should look like: 这就是find_user.jade文件的外观:

form(action='find_user/user/', method='post')
    fieldset
        label(for="age") Find user by age: 
            input(type="text", size="30", name="age", required="required")
            input(type='submit', value='Find', name="submit")

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM