モデルをロードするためにコントローラーに名前を付けるのに問題があります。
私のapp.js
var express = require('express');
var app = express();
app.everyauth = require('everyauth');
app.mongoose = require('mongoose');
var fs = require('fs');
var config = require('./config.js')(app, express);
//Include models
var models = {};
fs.readdir(__dirname + '/models', function(err, files){
if (err) throw err;
files.forEach(function(file){
var name = file.replace('.js', '');
models.name = require('./models/' + name)(app.mongoose).model;
});
});
//Include controllers
fs.readdir(__dirname + '/controllers', function(err, files){
if (err) throw err;
files.forEach(function(file){
var name = file.replace('.js', '');
require('./controllers/' + name)(app, models);
});
});
app.listen(process.env.PORT || 3000);
たとえば、モデルにtest.jsがあります
データベースで何かを見つけたい場合は、次のようにします。
models.test.find({}, function(err, docs){});
しかし、テストが不明であるため機能しません。
models.name.find({}, function(err, docs){});
したがって、名前をモデルの名前に置き換えます
ありがとう