2017-02-19 9 views
0

私はMongoDB Shellを経由して、文書を取得しています:なぜ私はマングースで文書を入手できないのですか?

db.page_about_love.find() 

しかし、私はマングースを経由して、文書を取得することはできません。なにが問題ですか?

mongoose.connect(db_uri); 

var loveSchema = new mongoose.Schema({ 
    title: String, 
    content: String, 
    tag: String 
}); 

mongoose.model('page_about_love', loveSchema); 

var about = mongoose.model('page_about_love'); 
about.find(function (err, love) { 
    if (err) return console.error(err); 
    console.log(love); 
}); 

テスト出力:

[] 
+1

db.pageを使用し、mongodbシェルでタブします。私の前提が正しければ、おそらくpage_about_loveとpage_about_love * s *を表示します。 Mongooseは、モデルの名前をコレクションの複数形に変換します。 – Adowrath

答えて

2

マングースを使用するコレクション名を生成しないようにするには、明示的なこと、それは使用すべきコレクション名渡す必要があります。

var loveSchema = new mongoose.Schema({ 
    title: String, 
    content: String, 
    tag: String 
}, { collection : 'page_about_love' }); 

それ以外の場合、Mongooseはt彼utils.toCollectionName()あなたのケースではpage_about_loves(複数形に注意してください)をもたらすコレクション名を決定するモデル名に機能します。

詳細情報here