2017-11-29 7 views
0

私はどのようにしてマングースを通して特定のユーザーの記事を取得したいですか?私のコードのように:mongooseを通じてMongoDbの特定の条件に従って具体的な結果を得る方法

Content.find().sort({_id:-1}).populate(['category','user']).then(function (content) { 
       res.render('admin/content_list',{ 
        pid:req_pid, 
        title:'博客管理后台', 
        userInfo:req.userInfo, 
        contents: content 
       }) 
      }) 

私はこれを介してすべての記事を得るが、私が欲しいのは、私はそれを行うことができますどのように、特定のユーザーに属している結果でしょうか?

答えて

0

あなたは行うことができます。

USERIDは、ユーザーのObjectIdがある
Content.find({userid:USERID}).sort({_id:-1}).populate(['category','user']).then(function (content) { 
       res.render('admin/content_list',{ 
        pid:req_pid, 
        title:'博客管理后台', 
        userInfo:req.userInfo, 
        contents: content 
       }) 
      }) 

を。

おそらく、これを見てみたいと思います。http://mongoosejs.com/docs/queries.html、あなたはマングースを使用していると仮定します。

+1

このユーザードキュメントIDのコンテンツドキュメントは検索されませんか?質問をしている人が参照して入力する別個のユーザーモデルを持っているように見えるので、この回答は機能しません。 –

+1

@SjoerdDalあなたは完全に正しいです。私はこれを修正するための答えを更新しました。 –

0

特定のユーザーのobjectIdを使用して結果を絞り込むことができます。そのIDを持っている限り、次のようなことをすることができます:

const mongoose = require('mongoose'); 
const ObjectId = require('mongoose').Types.ObjectId; 

Content.find({ 
     user: new ObjectId(userId) 
    }) 
    .sort({_id: -1}) 
    .populate(['category', 'user']) 
    .exec((err, results) => { 

    }); 
関連する問題