首页 > 解决方案 > 在 iOS 应用程序中使用 ParseSwift .query().find()

问题描述

在 iOS 应用程序中使用 ParseSwift 时,我可以使用以下类型的代码:

    do {MyCollection.query().find() {
            result in
            switch result {
            case .success(let items):
              ... useful work here ...
            case .failure(let error):
                print("Error in \(#function): \(error)")
            }
        }
    }

我需要查看一些示例代码,其中query().find()部分更具选择性。由于某些原因,我自己尝试的方法在这一点上总是失败。我肯定遗漏了一些非常简单的细节,但我希望一些例子能让事情变得更明显。

我看过这个文件。但是没有这种类型的例子:

MyCollection.query().find()

我什至看不到使用find()的案例。并且由于某种原因,在query() : query("score" > 9)中用于选择的语法在我想使用它时不起作用。

例如,我想做如下的事情,参数由上下文提供,字段是 MyCollection 中指向另一个集合的字段:

do {MyCollection.query("field" == parameter).find() {
  ......
}

尽管上述方法不起作用。我仍然可以执行以下操作:

do {MyCollection.query().find() {
    result in
    switch result {
    case .success(let items):
        for item in items {
            if item.field?.objectId != parameter  {continue} // Eliminate useless item !
            // Keep item for useful work.
            ......
}

所以执行我想要的选择,但是以一种非常低效的方式,因为当我不需要它时我得到了完整的集合。

标签: iosswiftmongodb-queryparse-server

解决方案


推荐阅读