これが私のフォルダ構造だと考えてください
express_example
|---- app.js
|---- models
|-------- songs.js
|-------- albums.js
|-------- other.js
|---- and another files of expressjs
ファイルsongs.jsの私のコード
var mongoose = require('mongoose')
, Schema = mongoose.Schema
, ObjectId = Schema.ObjectId;
var SongSchema = new Schema({
name: {type: String, default: 'songname'}
, link: {type: String, default: './data/train.mp3'}
, date: {type: Date, default: Date.now()}
, position: {type: Number, default: 0}
, weekOnChart: {type: Number, default: 0}
, listend: {type: Number, default: 0}
});
mongoose.model('Song', SongSchema);
ファイルalbums.js内
var mongoose = require('mongoose')
, Schema = mongoose.Schema
, ObjectId = Schema.ObjectId;
var AlbumSchema = new Schema({
name: {type: String, default: 'songname'}
, thumbnail: {type:String, default: './images/U1.jpg'}
, date: {type: Date, default: Date.now()}
, songs: [SongSchema]
});
mongoose.model('Album', AlbumSchema);
次の方法で任意のモデルを取得できます。
require('mongoose').model(name_of_model);
しかし、name_of_modelではなく単純なコードで特定のフォルダー内のすべてのモデルを要求するにはどうすればよいですか?上記の例では、フォルダー./models/*内のすべてのモデル