大家好,我正在尝试构建一个简单的滑动应用程序来喜欢和不喜欢上传的照片。我正在努力按照我希望的方式将喜欢/不喜欢添加到 Parse 中。到目前为止,我已经尝试了两种方法:
- 将发布图像的 objectId 添加到喜欢/不喜欢它的用户,但问题是 objectId 中只有一个出现在数组中。
- 在图像发布到 (Post) 的 Parse 类中,将喜欢/不喜欢的用户 ID 添加到图像。这根本不会发生,每次喜欢/不喜欢图像时都会使用新的 objectId 创建新行。
理想情况下,我希望将喜欢/不喜欢照片的用户放在一个数组中,以便稍后查询。我对 Parse 不是很了解,这是我第一次使用它,因此非常感谢任何帮助。
这是我在滑动图像时使用的代码(添加到 Post 类):
if gesture.state == UIGestureRecognizerState.Ended {
var likedOrDisliked = ""
if label.center.x < 100 {
print("Dislike")
likedOrDisliked = "disliked"
} else if label.center.x > self.view.bounds.width - 100 {
print("Like")
likedOrDisliked = "liked"
}
if likedOrDisliked != ""{
var post = PFObject(className: "Post")
post.addUniqueObjectsFromArray([(PFUser.currentUser()?.objectId!)!], forKey: likedOrDisliked)
post.saveInBackground()
}
这是我尝试添加到用户类时的片段:
PFUser.currentUser()?.addUniqueObjectsFromArray([displayedUserID], forKey: likedOrDisliked)
do {
try PFUser.currentUser()?.save()
} catch {
}
这是仪表板中发生的事情, new rows created
最佳答案
你想要的是用喜欢/不喜欢的用户更新实际的帖子
- 创建一个帖子(这部分你没有解释,但我展示了一个简单的假设 - 伪代码)
var post = PFObject(class:"Post")
post["image"] = PFFile(image)
post.save()
接下来,您通过从帖子中获取图像来在屏幕上显示图像 当用户不喜欢/喜欢时
您将当前 PFUser 添加到喜欢/不喜欢的列并保存回对象。
let arrayMut = NSMutableArray()
var array = NSArray()
if let arrayData = post.objectForKey("likedUser") as? NSArray {
array = arrayData
}
现在遍历数组以查找当前用户是否存在..如果找不到..添加当前 PFUser
arrayMut.addObject(PFUser.currentUser().objectId);
post.setObject(arrayMut, forKey: "likedUser")
post.save()
关于ios - 努力跨 Parse 类追加数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36773846/