Joi: проверить объект с переменным количеством ключей
Я пытаюсь написать метод проверки для следующего объекта (ассоциативный массив):
{
"10:00": {
discount: 10,
time: "10:00",
},
"11:00": {
discount: 11,
time: "11:00",
},
...
....
}
Использование Joi ( https://github.com/hapijs/joi) Что я получил, так это:
Joi.object().keys(
{time:{
discount: Joi.number(),
time: Joi.string(),
}}
),
что, очевидно, неправильно и терпит неудачу с: ValidationError: child "discounts" fails because ["10:00" is not allowed, "11:00" is not allowed]
Кто-нибудь может подсказать, как написать валидацию для объектов с переменным количеством ключей (ассоциативный массив)
1 ответ
Разобрался после прочтения: есть ли способ проверить имена динамических ключей?
Joi.object().pattern(/^/, [
Joi.object({
discount: Joi.number(),
time: Joi.string()
})
])