Grape Swagger 不显示示例参数
Grape Swagger does not show up Example param
我正在使用 grape-swagger gem 为 dredd 生成 swagger 文档。
我有这样的参数:
params do
requires :id, type: Integer, documentation: { x: { example: 1 } }
end
Grape swagger 忽略 example param.
而不是这个:
{
"in": "path",
"name": "id",
"type": "integer",
"format": "int32",
"required": true,
"x-example": 1
}
我知道了:
{
"in": "path",
"name": "id",
"type": "integer",
"format": "int32",
"required": true
}
如何发送示例 值以供测试?
我在 dredd 问题中找到 this。这解决了我的问题。
简而言之,解决方案如下所示:
module MyApp
module AddExampleToBodyParam
module ClassMethods
private
def document_description(settings)
super
@parsed_param[:example] = settings[:example] if settings[:example]
end
end
def self.prepended(base)
class << base
prepend ClassMethods
end
end
end
end
module GrapeSwagger
module DocMethods
class ParseParams
prepend MyApp::AddExampleToBodyParam
end
end
end
现在,我可以通过以下方式将 example 值代理到参数主体:
expose :some, documentation: { example: 'test' }
我正在使用 grape-swagger gem 为 dredd 生成 swagger 文档。
我有这样的参数:
params do
requires :id, type: Integer, documentation: { x: { example: 1 } }
end
Grape swagger 忽略 example param.
而不是这个:
{
"in": "path",
"name": "id",
"type": "integer",
"format": "int32",
"required": true,
"x-example": 1
}
我知道了:
{
"in": "path",
"name": "id",
"type": "integer",
"format": "int32",
"required": true
}
如何发送示例 值以供测试?
我在 dredd 问题中找到 this。这解决了我的问题。 简而言之,解决方案如下所示:
module MyApp
module AddExampleToBodyParam
module ClassMethods
private
def document_description(settings)
super
@parsed_param[:example] = settings[:example] if settings[:example]
end
end
def self.prepended(base)
class << base
prepend ClassMethods
end
end
end
end
module GrapeSwagger
module DocMethods
class ParseParams
prepend MyApp::AddExampleToBodyParam
end
end
end
现在,我可以通过以下方式将 example 值代理到参数主体:
expose :some, documentation: { example: 'test' }