swift - Parse.com Swift 多类查询

标签 swift parse-platform querying

我正在使用 Parse.com 来存储我的用户信息,但很难弄清楚以下内容。

使用 Parse.com 我有三个类:

1) 用户

2)地点

3) 保存地点

SavedPlace 是一个将用户与用户保存的地点相关联的类。对于 SavedPlace 中的每个位置,都有 User 和 Place 指针以及用户创建的一些附加注释。

在我的应用程序中,我想将用户保存的地点列表检索到带有地点信息(即名称、位置、图像)和注释的 TableView 中。

我目前的方法是:

1) 查询所有已保存地点的 SavedPlace 并返回一个地点对象 ID 数组

2) 在Place类中查找每个objectID并返回Place信息。

有没有一种更有效的方法可以让我为所有用户保存的地点查询一次 Parse 并从 Place 类返回所有相关信息?

谢谢

最佳答案

有。

PFQuery 有一个名为 includeKey: 的方法,它允许您添加将随查询返回的对象,在您的情况下,您想要获取用户和与 SavedPlace 实例相关的地方,对吗?所以你这样做:

let query = SavedPlace.query()
query.includeKey("place")
query.includeKey("user")
query.findObjects...

结果将是一个 SavedPlace 对象的列表,其中包含一个指向 userplace 的指针,这些对象已经被获取,所以他们的所有字段(不是指针)都可供您使用。

您甚至可以在该方法中使用点符号,因此如果您的 Place 类中有一个名为 Country 的指针并且您也想获取它,您可以添加 query.includeKey("place.country") 它将包含在查询中。

最好的一点是它会被计为一次调用。

这里是关于includeKey的更多信息

http://blog.parse.com/announcements/queries-for-relational-data/

关于swift - Parse.com Swift 多类查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35276481/

相关文章:

uitableview - 表格单元格字体大小(在 Swift 中)

swift - 从推送打开 View Controller 时,汉堡菜单不会加载

mysql - 从 influxdb 查询数据并将其存储到测量(表)中

PHP 和 MySQL : Order by most recent date and limit 10

firebase - Flutter 中从 Firestore 查询单个文档(cloud_firestore 插件)

iOS - FileManager 扩展的最佳实践

swift - 是否可以播放存储在 Apple Watch 上的音乐?

ios - 在 Swift 中声明具有类型约束的属性

ios - 使用 Swift 崩溃的 Facebook 登录中的取消按钮?

ios - 解析和其他 Facebook 权限 (iOS)