gpt4 book ai didi

ios - 将我在 Parse 中的列设置为 Swift 中 ObjectId 的指针

转载 作者:行者123 更新时间:2023-11-28 12:50:51 26 4
gpt4 key购买 nike

我在我的 Swift 应用程序中创建了一些投票按钮,用户可以在其中为他们喜欢的电影投票。我的应用程序还集成了 Parse。

当用户在我的应用程序中按下投票按钮时,它会增加一个计数并添加到我的 Parse 数据库中。我现在添加了一些代码,这些代码还将电影信息添加到他们刚刚投票的内容中。为此,我在 Parse 中创建了一个名为 Votes 的新类。我的代码如下:

@IBAction func upVoteButton(sender: UIButton) {

let hitPoint = sender.convertPoint(CGPointZero, toView: self.tableView)
let hitIndex = self.tableView.indexPathForRowAtPoint(hitPoint)
let object = objectAtIndexPath(hitIndex)

if PFUser.currentUser() != nil {

let votes = PFObject(className: "Votes")
votes["userUpVoting"] = PFUser.currentUser()?.objectId
votes["filmVotedUp_test"] = object!.objectId

votes.saveInBackground()

}
}

这段代码有效,并保存了用户投票的电影的 objectId,但它只是将其添加为一个字符串。理想情况下,我希望将其设置为数据库中的指针。

我如何从我的代码中做到这一点?

或者,以这种方式设置它没有意义吗?谢谢

最佳答案

首先,您需要在类 Votes 中设置一个指向 _User(用户类)的指针对象。在您的代码中,不要将 PFUser.currentUser()?.objectId 设置为 userUpVoting,只需将 PFUser.currentUser() 设置为 用户投票。当你需要设置一个指针时,你需要设置整个对象,而不仅仅是对象id。我在您的代码中注意到的另一件事:确保在应用程序投入生产之前,您将 votes.saveInBackground 更改为 votes.saveInBackgroundWithBlock 并处理错误。

例如,您将使用:

classInfo.saveInBackgroundWithBlock({ (success: Bool, error: NSError?) in

if success == true {

// Object(s) was/were successfully saved

} else if error != nil {

// Display an alert to the user
// Use error!.localizedDescription as the message - it will give the user the specific error that occured

} else {

// Display an alert to the user - something went wrong

}

})

关于ios - 将我在 Parse 中的列设置为 Swift 中 ObjectId 的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36580569/

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