2017-01-04 11 views
1

"members"コレクションのすべてのドキュメントを出力したいと思います。 find()関数を使用しましたが、エラーが発生します:find() is not a function。 (モデル/管理フォルダ内)member_model.jsでmongodb - find()は関数ではありません

:(コントローラ/管理フォルダ内)index.jsで

var mongoose = require('mongoose'); 
var Schema = mongoose.Schema; 
var MemberSchema = new Schema({ 
    username: String, 
    password: String 
}); 
module.exports = mongoose.model('members', MemberSchema); 

const members = require('../../models/admin/member_model'); 
var Members = new members(); 
Members.find({}, function (err, resDB) { 
    assert.equal(err,null); 
    console.log(json(resDB)); 
}); 

私はDBへの接続確認、それはまだですOK。 私は他のいくつかの質問を読んでいますが、私の問題については適切な答えです。

注もっと私はこのようなテスト:auth.jsで

(コントローラで/ Adminフォルダ):

const members = require('../../models/admin/member_model'); 
var Members = new members(); 
Members.username = req.body.username; 
Members.password = req.body.password; 
var refererURL = req.headers.referer; 

Members.save((err, resSave) => { 
    if(err) { 
    console.log(err); 
    res.redirect(refererURL); 
    } else { 
    console.log('saved'); 
    } 
}) 

Members.find({}, function (err, resDB) { 
    assert.equal(err,null); 
    console.log(json(resDB)); 
}); 

Members.save()はOKですが、Members.find()まだエラー。

私のエラーは何ですか? ありがとう!

+0

'members'のようなサウンドが正しくインポートされない可能性があります –

+0

const members = require( '../../ models/admin/member_model');この行はありますか? –

+0

メンバーに保存されているものをチェックしようとしましたか? – iagowp

答えて

1

以下のコード試してみてください。

member_model.jsで(モデルで/ Adminフォルダ):

// module.exports = mongoose.model('members', MemberSchema); 
module.exports = { 
    memberCollection: mongoose.model('members', MemberSchema) 
} 

でindex.js

変更をするには、以下のコード(コントローラ/管理フォルダ内):

const members = require('../../models/admin/member_model'); 
members.memberCollection.find({}, function (err, resDB) { 
    assert.equal(err,null); 
    console.log(json(resDB)); 
}); 
+0

ありがとう@ ti2005!私はそれを見つけましたが、あなたの答えは私の時間を節約するのに役立ちます –

+0

オブジェクト内にmoogoose.modelを追加すると、そのオブジェクトが機能するのはなぜですか? – molavec

関連する問題