在我的VoteCount类中的Parse数据控制台上,我有一个名为objectId的String数据的垂直列,该类中的每个水平数据行都有一个唯一的objectId。正如您在此处所见,我从objectId BiEM17uUYT检索数据:
var query = PFQuery(className: "VoteCount")
query.getObjectInBackgroundWithId("BiEM17uUYT") {
(voteCount1: PFObject!, error: NSError!) -> Void in
if error != nil {
NSLog("%@", error)
} else {
let votes = voteCount1["votes"] as Int
let votes2 = voteCount1["votes2"] as Int
let option1 = voteCount1["optionName"] as String
let option2 = voteCount1["optionName2"] as String
self.showOption1.text = "\(option1)"
self.showOption2.text = "\(option2)"
}
我只是不知道如何从随机objectId调用数据。我只能调用来自特定objectId的数据,在本例中为BiEM17uUYT。如何从整个列中的随机objectId收集所有数据,而不仅仅是BiEM17uUYT?这将允许我纯粹从Parse更新我的应用数据,而不是让我不断提交全新的更新。
注意:喜欢"投票","投票2"," optionName"和" optionName2"," objectId"是另一列数据。
答案 0 :(得分:0)
简答:在你的班级上,创建一个带有数字的变量,增加该数字,使其始终唯一且顺序。然后调用Parse获取对象总数并运行RAND以获得介于0和最大数字之间的数字。然后在右侧字段中查询具有该编号的对象。
更长的答案:尝试这样的事情:
var query = PFQuery(className: "VoteCount")
query.countObjectsInBackgroundWithBlock {
(count: Int, error: NSError!) -> Void in
if error == nil {
randNumber = arc4random_uniform(count)
query2.whereKey("voteNumber", equalTo:randNumber)
query2.getFirstObjectInBackgroundWithBlock {
(voteCount1: PFObject!, error: NSError!) -> Void in
if error != nil {
NSLog("%@", error)
} else {
let votes = voteCount1["votes"] as Int
let votes2 = voteCount1["votes2"] as Int
let option1 = voteCount1["optionName"] as String
let option2 = voteCount1["optionName2"] as String
self.showOption1.text = "\(option1)"
self.showOption2.text = "\(option2)"
}
}
}