Mongoose 猫鼬-这是什么验证?

Mongoose 猫鼬-这是什么验证?,mongoose,Mongoose,在学习本教程的同时,我来到了第5步(我将其调整为适合我自己的应用程序) …这给了我TypeError:当我尝试启动服务器时,无法调用未定义的的方法“validate” 删除验证块可以使一切正常运行 但街区到底在做什么?验证单元模型的“路径”?哪条路? 中的任何内容都没有给我任何指导。该代码正在向单元模式的模型字段(aka)添加自定义验证函数。但是该模式没有model字段,因此对Unit.path('model')的调用返回undefined,导致出现TypeError 验证函数是一种增强的req

在学习本教程的同时,我来到了第5步(我将其调整为适合我自己的应用程序)

…这给了我
TypeError:当我尝试启动服务器时,无法调用未定义的
的方法“validate”

删除验证块可以使一切正常运行

但街区到底在做什么?验证单元模型的“路径”?哪条路?
中的任何内容都没有给我任何指导。

该代码正在向
单元
模式的
模型
字段(aka)添加自定义验证函数。但是该模式没有
model
字段,因此对
Unit.path('model')
的调用返回
undefined
,导致出现
TypeError


验证函数是一种增强的
require:true
验证程序示例,它也不允许空字符串和空值。

had
model
path。OP更改了架构,但保留了完整的验证。因此,此处的“路径”表示“字段”或“属性”或“键”,而验证仅针对此属性的存在?require:true不是已经处理了所有密钥的验证吗?@dwilbank对,我想这是一个增强的
require:true
validator示例,它也不允许空字符串和空值。你看过mongoose文档吗?和。
var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var Unit = new Schema({
    name: {
        type: String,
        require: true
    },
    screenName: {
        type: String,
        require: true
    },
    position: {
        type: [Number],
        require: true
    },
    imagePath: {
        type: String,
        require: true
    },
    state: {
        type: String,
        require: true
    }
});

Unit.path('model').validate(function(v) {
    return ((v!="") && (v!= null));
});

module.exports = mongoose.model('Unit', Unit);