var AnimalSchema = new mongoose.Schema({
name: {type: String, require: true},
age: {type: Number},
bread: {type: String}
});
然后我在index.html中创建了一个像这样的表单,
<form ng-submit="createAnimal()">
<input ng-model="newAnimal.name" type="text" placeholder="...name">
<input ng-model="newAnimal.bread" type="text" placeholder="...bread">
<input ng-model="newAnimal.age" type="number" placeholder="...age">
<input type="submit">
</form>
即使我将名称字段留空,表单的其余部分也会添加到mongo文档中。我认为如果在架构中将required设置为true,则会向客户端抛出一个错误,即无法添加名称字段。
我查看了mongoose文档,似乎没有任何解释。网上也找不到任何东西。
答案 0 :(得分:0)
据我所知,它应该是
required: true
而不是
require: true
这可能是为什么省略参数并将数据保存到集合
的原因答案 1 :(得分:0)
@maurycy提到它应该是
required : true
这是Mongoose所需的验证器:
http://mongoosejs.com/docs/api.html#schematype_SchemaType-required