Показать сообщение отдельно
  #1922 (permalink)  
Старый 20.07.2016, 15:51
Аватар для trikadin
Модератор
Отправить личное сообщение для trikadin Посмотреть профиль Найти все сообщения от trikadin
 
Регистрация: 27.04.2010
Сообщений: 3,417

Сообщение от nerv_
Будь любезен, покажи пример валидации.
Схему целиком скидывать не буду, но как-то так:
{
  "id" : "/inventory#",
  "properties": {
    "_id": {
      "type": "string",
      "format": "ObjectID"
    },
    "slug": {
      "type": "string",
      "pattern": "^[0-9a-zA-Z-_]+$"
    },
    "uuid": {
      "type": "string",
      "format": "uuid"
    },
    "condition": {
      "type": "object",
      "properties": {
        "cityIds": {
          "type": "array",
          "items": {
            "type": "integer",
            "minimum": 0
          },
          "minItems": 1,
          "uniqueItems": true
        }
      },
      "additionalProperties": false
    },
    "where": {
      "type": "object",
      "properties": {
        "offset": {
          "type": "integer",
          "minimum": 0
        },
        "screenName": {
          "type": "string",
          "default": "main"
        }
      },
      "additionalProperties": false
    }
  }
}


Сообщение от nerv_
Желательно, чтобы еще файлы валидировать можно было
Хранить файлы в БД? Это не ко мне.

Кстати, для небольших случаев валидации я тоже использую joi -- всё-таки полноценные схемы заморочно писать, а в joi всё быстро и понятно. Плюс он валидирует не JSON-объект, а JS-объект (т. е. там можно и наличие ф-ции проверить, например).
__________________
Читайте:
Ты любопытный) Всё-таки, ничему в этом мире не помешает хорошая доля юмора)
Как спросить, чтобы вам ответили
Часто Задаваемые Вопросы (FAQ)
Ответить с цитированием