raml 0.8枚举值和示例中的多个选择

问题描述 投票:0回答:1

我正在使用RAML 0.8,我正在定义一个查询字符串参数。

查询字符串的值应该是逗号分隔的预定义值列表

所以我使用枚举来定义要使用的可接受值列表

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

但是通过这个例子,我收到了这个警告

值应该是'status','order Type','stock Type','model','order Number'之一

如果可能的话,我希望摆脱这个例子的警告。使用RAML 0.8甚至是可能的,或者我应该忽略它作为唯一的警告而不是错误

raml
1个回答
0
投票

警告有效。枚举类型只会期望其中一个可能的值。如果您需要发送这些值的数组,如:?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 } ]
© www.soinside.com 2019 - 2024. All rights reserved.