使用 iOS Amplify 和 GraphQL 的复杂 where 子句

问题描述

我相信这里有简单的解决方案。非常感谢您帮助找到这些解决方案。

上下文:

  • iOS - SwiftUI - AWS Amplify - GraphQL

1) 按连接属性过滤查询

QueueMember 代表队列中的玩家。下面是QueueMember模型的相关部分:

type QueueMember @model {
  player: Player @connection
  status: Status <!-- enum
  // Other irrelevant properties
}

在以下示例中,有一个 Player 记录(loggedInPlayer 是变量),它代表应用程序的玩家。当我尝试运行以下命令时:

Amplify.DataStore.query(QueueMember.self,where: QueueMember.keys.player == loggedInPlayer) { result in

...我收到以下错误

表达类型不明确,没有更多上下文

我相信,但我真的不觉得模棱两可。

2.按多个值过滤:

我怀疑我的 sql 背景使我错误地使用 Nosql。但是,必须有一种过滤数据集的方法,对吗?考虑上面的 QueueMember 示例,如果我也只想要具有特定状态的记录怎么办?这是我对我期望的工作(没有)的 sql 猜测:

Amplify.DataStore.query(QueueMember.self,where: QueueMember.keys.player == loggedInPlayer,and: QueueMember.keys.status == .active) { result in

正如我之前所说,非常感谢任何帮助。

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)