当前位置: 首页 > 面试题库 >

使用2个字段的猫鼬自定义验证

夔修伟
2023-03-14
问题内容

我想使用猫鼬自定义验证来验证endDate是否大于startDate。如何访问startDate值?使用 this.startDate时
,它不起作用;我不确定。

var a = new Schema({
  startDate: Date,
  endDate: Date
});

var A = mongoose.model('A', a);

A.schema.path('endDate').validate(function (value) {
  return diff(this.startDate, value) >= 0;
}, 'End Date must be greater than Start Date');

diff 是比较两个日期的函数。


问题答案:

您可以尝试将日期戳嵌套在父对象中,然后验证父对象。例如:

//create a simple object defining your dates
var dateStampSchema = {
  startDate: {type:Date},
  endDate: {type:Date}
};

//validation function
function checkDates(value) {
   return value.endDate < value.startDate; 
}

//now pass in the dateStampSchema object as the type for a schema field
var schema = new Schema({
   dateInfo: {type:dateStampSchema, validate:checkDates}
});


 类似资料:
  • 问题内容: 我正在尝试只选择一个特定的领域 但是在我的json响应中,我也收到_id,我的文档架构只有两个字段,_id和name 为什么??? 问题答案: 除非您明确排除该字段,否则该字段始终存在。使用以下语法: 或通过对象显式:

  • 我在修改我安装的WordPress流行帖子插件时遇到了一些问题。 它可以选择从自定义字段获取缩略图,我已将其输入为“image_facebook”。但是缩略图没有显示。 在检查代码时,我发现imgsrc有post id而不是返回图像URL。 我已经把问题缩小到我安装的另一个插件http://wordpress.org/plugins/advanced-custom-fields/ 当它处于活动状态

  • 这里有一个小问题,希望这个问题也能帮助其他想知道更多关于注释验证的人 我目前正在研究Spring,目前,我计划尝试定制注释验证。 我搜索了很多,现在我知道主要有两种验证,一种用于控制器,另一种是使用@Valid的注释方法 在此之后,我需要创建验证器本身: 另一个想法是使用同一个类作为一个例子,它说我想要生日,confirmBirthday和birthdayMessdage只能同时为null或反对。

  • 我需要在joomla 3.0的模块中使用xml创建一些自定义字段。我做了如下所示的事情。我的模块。字段的xml文件代码为: 如何保存多个字段的值?请帮帮我

  • 问题内容: 我正在尝试验证并保存具有以下结构的Passport配置文件: http://passportjs.org/guide/profile/ 这是我想出的方案: 电子邮件具有名为“ type”的属性,该属性保留用于猫鼬类型。我该如何解决? 问题答案: 您需要使用对象定义字段:

  • 问题内容: 这里有一个贪婪的小问题,希望这个问题也可以帮助其他想更多地了解注释验证的人 我目前正在学习Spring,现在,我计划尝试自定义带注释的验证。 我已经进行了很多搜索,现在我知道主要有两种验证,一种用于控制器,另一种是使用@Valid的注释方法 所以这是我的情况:假设我有两个或多个字段,当它们均为ALL NULL时可以为null。但是,只有当这些字段之一包含空字符串以外的任何值时,才要求这