如何在放大graphql api中对字段进行排序?我正在尝试在获取模型列表的同时对字段进行排序。
例如:在listOrder查询中对createdDate进行排序。
请帮忙吗?
答案 0 :(得分:1)
@key指令可能就是您想要的。
假设您要通过Order
时间戳列出特定客户的createdAt
个,并假设这是您的模式:
type Order @model @key(fields: ["customerEmail", "createdAt"]) {
customerEmail: String!
createdAt: String!
orderId: ID!
}
这将创建一个主索引,其哈希键为customerEmail
,排序键为createdAt
,由AppSync解析程序代表您管理。这将允许您运行以下查询:
query ListOrdersForJack {
listOrders(customerEmail:"jack@gmail.com") {
items {
orderId
customerEmail
createdAt
}
}
}
为什么没有明确的sort
关键字?因为@key指定字段createdAt
应该用作排序键,所以排序将自动发生。您可以参考https://github.com/aws-amplify/amplify-cli/issues/1502进行类似的讨论。