Moleler добавить правило проверки в формате даты
У меня есть ниже API, созданный молекулярным каркасом, есть параметр EventDate, как я могу указать формат и применить правило проверки для проверки даты получения
createEvent: {
params: {
UserId: {
type: "string",
optional: false
},
Name: {
type: "string",
optional: false
},
Description: {
type: "string",
optional: false
},
Location: {
type: "string",
optional: false
},
EventDate: {
type: "string",
optional: false
}
},
handler(ctx) {
let entity = ctx.params;
return this.broker.call("event.find", {
query: {
UserId: entity.UserId,
Name: entity.Name,
}
}).then((res) => {
if (res == null || res.length == 0) {
return this.broker.call("event.create",{
UserId:entity.UserId,
Location: entity.Location,
EventDate: entity.EventDate,
Description: entity.Description,
Name:entity.Name
}).then(doc =>{
return new Response(200, 'success', doc);
});
} else {
throw new ValidationError("you already created event with same name", -1, "you already created event with same name");
}
});
}
},
Я хочу принять этот формат даты только гггг / мм / дд
Заранее спасибо
1 ответ
Если вы хотите принять только строковую дату в формате "гггг / мм / дд", используйте pattern
в строке валидатора.
Например:
EventDate: {
type: "string",
pattern: /([12]\d{3}/(0[1-9]|1[0-2])/(0[1-9]|[12]\d|3[01]))/g,
optional: false
}