将集合名称传递给猫鼬模型
Passing collection name to mongoose models
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var sensorModel = new Schema({
key: String,
value: Schema.Types.Mixed
})
modules.export = mongoose.model('collectionName',sensorModel);
我想将我的 app.js 主文件中的集合名称传递给它,然后在模型代码中指定它,有什么方法可以做到这一点吗?
请尝试使用 Template string
如下所示
sensorModel.js
module.exports = function (modelName) {
// sensorModel definition...
//...
var str = `${modelName}`;
mongoose.model(str, sensorModel);
});
app.js
var modelName = 'collectionName';
require('./models/sensorModel.js')(modelName); // require the model file before invoking `mongoose.model`.
var CollectionName = mongoose.model('collectionName');
var mongoose = require('mongoose'),
Schema = mongoose.Schema;
var sensorModel = new Schema({
key: String,
value: Schema.Types.Mixed
})
modules.export = mongoose.model('collectionName',sensorModel);
我想将我的 app.js 主文件中的集合名称传递给它,然后在模型代码中指定它,有什么方法可以做到这一点吗?
请尝试使用 Template string
如下所示
sensorModel.js
module.exports = function (modelName) {
// sensorModel definition...
//...
var str = `${modelName}`;
mongoose.model(str, sensorModel);
});
app.js
var modelName = 'collectionName';
require('./models/sensorModel.js')(modelName); // require the model file before invoking `mongoose.model`.
var CollectionName = mongoose.model('collectionName');