gpt4 book ai didi

ios - Parse.com - 使用 Swift 获取关系

转载 作者:可可西里 更新时间:2023-11-01 02:18:18 26 4
gpt4 key购买 nike

我有一个用户收藏夹类,它存储一个用户对象和一个事件对象,当用户收藏一个事件时它会被设置。

我想显示给定用户收藏夹的完整列表。因此,我查询收藏夹类以获取事件对象,然后尝试查询事件表以将收藏夹中的事件对象与实际事件类相匹配,以提取事件名称和 ID。例如,在 ruby​​ 中,假设关系/关联已设置,我会调用:

favorite.event.name
favorite.event.id

Swift 中的等价物是什么?到目前为止,这是我所拥有的,但有些东西告诉我我过于复杂了,我希望有简单的方法可用于通过关系检索数据。

let query = PFQuery(className: "Favorite")
query.includeKey("eventId")
query.whereKey("createdBy", equalTo:userId!)
query.findObjectsInBackgroundWithBlock { (favorites:[PFObject]?, error:NSError?) -> Void in

if (error == nil){
print("Favorite Count: \(favorites!.count)")
print("Favorite Event IDs: \(favorites!)")

for favorite in favorites! {
print("Favorite: \(favorite)")

let eventNameQuery = PFQuery(className: "Event")
eventNameQuery.whereKey("eventId", equalTo:favorite )
eventNameQuery.findObjectsInBackgroundWithBlock { (events:[PFObject]?, error:NSError?) -> Void in

if (error == nil){
print(events!.count)
print(events!)

for event in events! {
self.favoriteListItems.append(event.objectId! as String)
self.favoriteListIds.append(event.objectId! as String)
}
}
}
}
self.savedEventsListTableView.reloadData()
} else {
print("error fetching objects")
}
}
}

当我运行它时,我得到零结果......当我知道在解析核心中我有匹配两者的对象时,如下所示:

最喜欢的类(class): Favorite Class with event object and user object

事件类: Event Class

最佳答案

首先查询指向用户对象的指针,而不是用户的objectId

query.whereKey("createdBy", equalTo:PFUser.currentUser()!)

接下来您可能想要添加事件名称。

for event in events! {
self.favoriteListItems.append(event["eventName"] as! String)
self.favoriteListIds.append(event.objectId! as String)
}

关于ios - Parse.com - 使用 Swift 获取关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34362718/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com