API 特别兴趣小组/当前设计/排序
< API 特别兴趣小组 | 当前设计(重定向自 API 工作组/当前设计/排序)
分析
排序通过使用查询字符串参数 'sort_key' 和 'sort_dir' 来确定;调用者可以多次指定这些参数,以生成排序键和方向的列表。
支持以下排序方向值
| 值 | 描述 |
|---|---|
| asc | 升序 |
| desc | 降序 |
有效的排序键基于项目的的数据模型。
排序键和方向按照它们作为查询字符串参数指定的顺序应用。例如,以下指定 'key1' 作为第一个排序键(升序),'key2' 作为第二个排序键(降序),等等。
sort_key=key1&sort_dir=asc&sort_key=key2&sort_dir=desc&sort_key=key3&sort_dir=asc
当前设计
以下列出的项目的 REST API 对排序键和排序方向的支持程度各不相同,范围从多个键和方向到单个键和单个方向。
一些项目还会将默认排序键附加到用户定义的键列表中。
下表总结了当前的行为
| 项目 | 排序键的数量 | 排序方向的数量 | 默认键 | 默认方向 |
|---|---|---|---|---|
| Nova | 多个 | 多个 | 'created_at', 'id' | desc |
| Neutron | 多个 | 多个 | 无 | 无 |
| Cinder | 单个 | 单个 | 'created_at', 'id' | desc |
| Ironic | 单个 | 单个 | 'id' | asc |
| Glance | 多个 | 单个 | 'created_at', 'id' | desc |
| Heat | 多个 | 单个 | 'created_at', 'id' | desc |
更多项目特定的信息可以在下面找到。
Nova
支持提供的排序方向少于排序键;任何没有关联方向的键都将应用默认方向。
Neutron
需要相等数量的排序键和排序方向。
Cinder
此 BP 提出了对多个排序键和多个排序方向的支持
Glance
Glance 支持多个排序键和单个排序方向;排序方向应用于所有键。
Heat
Heat 支持多个排序键和单个排序方向;排序方向应用于所有键。