如果我在express模型中明确定义了结构,我可以保存请求数据,但如果我没有明确定义数据结构,我就无法保存记录。
例如,如果我在模型中有这个,我可以保存
....
module.exports = mongoose.model('Form', new Schema({
name: String,
password: String,
admin: Boolean
}));
...
...
但如果我有这样的话,我就无法保存
module.exports = mongoose.model('Form', new Schema());
这是我的模特
// get an instance of mongoose and mongoose.Schema
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
// set up a mongoose model and pass it using module.exports
module.exports = mongoose.model('Form', new Schema());
这是我的路由器
apiRouter.post('/forms/createForm', function(req, res) {
var form = new Form(req.body);
form.save(function(err) {
if (err) throw err;
console.log('Form saved successfully');
res.json({ success: true });
});
});
由于
答案 0 :(得分:2)
好的,我的工作正常。
我可以使用严格的false选项来定义无模式结构。
多数民众赞成我是如何做到的:
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
// set up a mongoose model and pass it using module.exports
module.exports = mongoose.model('Form', new Schema({}, { strict: false} ));