【发布时间】:2015-06-22 08:57:36
【问题描述】:
如何在 Swagger 模型中使用任意键定义 map
假设我有以下国际化模型(在 Ruby 风格的伪代码中,假设使用类似 Globalize 的东西)
class Thingy
translates :name
attribute :code
end
我的 API 希望能够返回类似
{
"thingy": {
"code": "barn",
"translations": {
"default": "barn",
"en": "barn",
"ru": "cарай",
"fr": "grange",
"nl": "schuur"
}
}
}
但我不想在实际 API 中限制翻译键的范围
我可以在我的招摇文档中定义
definitions:
thingy:
required:
- code
properties:
code:
type: string
additionalProperties:
translations:
required:
- default
property:
default:
type: string
additonalProperties: string
这可以验证,但 Swagger Codegen 不会从 additionalProperties 生成任何内容,并且与以某种方式能够定义一个包含必需键和任意键的 map 类型相比,它不是很明确。
任何从事国际化工作的人都会面临类似的问题,所以我的问题是,其他人是如何处理这种情况的?
【问题讨论】:
标签: internationalization swagger rails-i18n