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 
}
Другие вопросы по тегам