RAML 0,8 значения перечисления и множественный выбор в примере - PullRequest
0 голосов
/ 15 марта 2019

Я использую RAML 0.8 и определяю параметр строки запроса.

значение для строки запроса должно быть разделенным запятыми списком предопределенных значений

Поэтому я использовал enum для определениясписок допустимых значений для использования

sort:
  description: Comma separated list of stock item properties to sort on.
  enum: ['status', 'orderType', 'stockType', 'model', orderNumber']
  example: 'orderType,status'

Однако в этом примере я получаю это предупреждение

значение должно быть одним из 'status', 'orderType', 'stockType', 'model ',' orderNumber '

Я бы предпочел по возможности избавиться от этого предупреждения для примера.С RAML 0.8 это даже возможно, или я должен просто проигнорировать это как только предупреждение, а не ошибку

1 Ответ

0 голосов
/ 20 марта 2019

Предупреждение действительно.Тип enum ожидает только одно из возможных значений.Если вам нужно отправить массив этих значений, таких как:? Sort = status, orderType, тогда вам нужно будет использовать шаблон.В приведенном ниже примере используется регулярное выражение для разрешения списка значений, разделенных запятыми.И конкретные значения перечисления, которые можно использовать, находятся в шаблоне.

#%RAML 0.8

title: enum-list

version: v1
protocols: [ HTTP ]
mediaType: application/json

traits:
  sortable:
    queryParameters:
      sort?:
        type: string
        pattern: ^(\s?[<<fieldset>>,]+\s?,)*(\s?[<<fieldset>>,]+)$
        example: 'status,orderType'
/api:
  displayName: api
  get:
   is: [ sortable: { fieldset: status|orderType|stockType|model|orderNumber } ]
...