Проверять массив объектов в экспресс-валидаторе - PullRequest
0 голосов
/ 29 ноября 2018

Я использую экспресс-валидатор для проверки моих полей.Но теперь у меня есть массив из 2 или 3 объектов, который содержит поля «userId» и «Hours», как показано ниже.

[
  {
    user_id:1,
    hours:8
  },
  {
    user_id:2,
    hours:7
  }
]

Теперь мне нужно проверить, если любое из свойств объекта, например, hoursили user_id пусто или нет. Если пусто, выведите ошибку.

Ответы [ 2 ]

0 голосов
/ 11 декабря 2018
let arr = [
  {
    user_id:1,
    hours:8
  },
  {
    user_id:2,
    hours:7
  }
]

Вы можете поставить чек следующим образом:

check("arr.*.user_id")  
  .not()  
  .isEmpty()

check("arr.*.hours")  
  .not()  
  .isEmpty()
0 голосов
/ 29 ноября 2018

Предполагая, что вы хотите проверить этот массив, а не вводить, вы сначала должны пройти через этот массив объектов следующим образом:

const array=[{user_id:1,hours:8},{user_id:2,hours:7}]
$.each(array,(key,value)=>{
   //your validation here 
     if(value.user_id.isEmpty()||value.hours.isEmpty())
        {
           //handle this
         }
})
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...