2016-07-23 5 views
1

MongoDBの1つのコレクションの1つのフィールド値をクエリ(取得)しようとしています。ノードjsを使用して変数に格納します。 特定のフィールド値をフェッチして変数に格納するようにクエリを実行します。mongodbでnodejを使用して特定のフィールド値を取得する

1).nodeファイルJS

var agegroupQuiz = require('../models/agegroup.js'); 

exports.agegroupController = function(req,res,next){ 

try{ 
var query = {max_age:item}; max_age value is 5 in my mongo database 

    var age = agegroupQuiz.findOne(query,function(err,data){ 
     if(err){ 
     console.log(err); 
     } 
     res.send(data); 
    }); 
    if(age===5){ 
    console.log(age); //this will show me the value of stored in mongodb database. 
      return next(err); 
      } 
    else{console.log("error in your code");} 
    }catch(err){ 
     console.log('Error While Saving the result ' +err); 
     return next(err); 
    } 
    } 

2).Mongodbスキーマ

This is my age schema inside models (../models/agegroup.js) 

    module.exports = (function AgeGroupSchema() { 

    var Schema = mongoose.Schema; 

    var AgeGroupSchema = new Schema({ 


     max_age:{type:Number}   //I want this value is stored into my age variable. 


    }); 

    var AgeGroup = mongoose.model('agegroups', AgeGroupSchema); 

    return AgeGroup; 
    })(); 

だからのMongoDBから特定のフィールド値を取得し、変数に格納されたクエリを必要とします。ここで

答えて

0

作品ミドルウェアの例である:

function find_ageGroup(req, res, next){ 

    agegroupQuiz.findOne({max_age:item},function(err, agegroup){ 
     if (err) return console.log(err); 

     if(agegroup){ 
      data = agegroup; 
      next(); 
     } else { 
      // Do some form of redirect or render if nothing is found. 
     } 
    }); 

} 

あなたは、あなたのルート(例)におけるミドルウェアとして、この機能を使用することができます応答仲間のため

app.get('/quiz', find_ageGroup, function(req, res) { 
    res.render('yourpage.ejs',{ 
     data: data, 
    }) 
}); 
+0

おかげで –

関連する問題