2

私はマングースとノードで遊んでいます。

バックボーン モデルを保存し、保存されたモデルを Mongoose 経由で Mongo から取得できるようにしたい。

モデルを保存できますが、Mongoose 経由で取得できません。以下を使用して、Mongo シェル経由で問題なくアクセスできます。

db.users.find()

私のコードは次のとおりです。

var mongoose = require('mongoose'),
userschema = mongoose.Schema({name: 'string', email: 'string'}),
db = mongoose.createConnection('localhost', 'test'),
User = db.model('User', userschema);

exports.save = function(req, res){
var userobj = req.body,
    newuser = new User(userobj);

newuser.save(function(err){
    if(err){
        res.send(err);
    }
    else{
        res.send(newuser);
    }
});
};

exports.fetch = function(req, res){
var users = User.find();
res.send(users);
}

リクエストを送信してフェッチ関数を実行すると、サーバーは次のように応答します

{
  "options": {
    "populate": {}
  },
  "_conditions": {},
  "_updateArg": {},
  "op": "find"
}

私は正しいコレクションか何かにいないようなものです。

4

1 に答える 1

0

User.find()クエリの結果を返しません。これらは、パラメータとして に提供するコールバックに渡されますfind

exports.fetch = function(req, res) {
    User.find(function(err, users) {
        res.send(users);
    });
};

コールバックを提供しない場合は、Queryオブジェクトが返されます (これが応答に表示されます)。

于 2012-10-18T12:13:30.590 に答える