2016-10-18 3 views
0

でcreatorフィールドを移入することができません、
すべてが正常であるが、ここで私の第二のコード私は私のクリエイターを移入することができないんだマングース

api.route('/') 
    .post(function (req, res) { 
     var story = new Story({ 
      creator: req.decoded.id, 
      content: req.body.content 
     }); 

     story.save(function (er) { 
      if (er) { 
       res.send(er); 
       return; 
      } 
      res.json('User story is created'); 
     }); 

    }) 

    .get(function (req, res) { 
     Story.find({ creator: req.decoded.id}) 
      .populate({ path: 'creator'}).exec(function (er, data) { 
      res.json(data); 
     }); 
    }) 

すべてのIDが

var StorySchema = new Schema({ 
    creator: { type: Schema.Types.ObjectId, ref: 'User' }, 
    content: String, 
    created: { type: Date, deafult: Date.now } 
    }) 

module.exports = mongoose.model('Story', StorySchema); 

を表示されませんユーザオブジェクトIDが表示されない以外は問題ありません。

答えて

-1

有効なmongoオブジェクトに文字列を変換するには、このような方法を試してください。

var ObjectID = require('mongodb').ObjectID; 
_id = new ObjectID(_id); 
0

あなたは適切なオブジェクトIDにデコードされた文字列を変換する必要があります。

const ObjectId = mongoose.Types.ObjectId; 
api.route('/') 
    .post(function (req, res) { 
     var story = new Story({ 
      creator: new ObjectId(req.decoded.id), 
      content: req.body.content 
     }); 

     story.save(function (er) { 
      if (er) { 
       res.send(er); 
       return; 
      } 
      res.json('User story is created'); 
     }); 

    }); 
+0

今、それはステートメントをログに記録し、私は新しいストーリー –

+0

エラーを取得することができませんよ、今でも動作していないのですか?何か? – Paul

+0

いいえ、何もありません。作成者が戻ってきて表示されていませんjson elseがエラーなしで表示されています –

関連する問題