[英]Extra argument in call error - Swift
我正在嘗試從我的Parse數據控制器中的數據列訪問隨機值。 我創建了一個查詢,如下所示,但始終收到一個錯誤消息:“ call中的額外參數”,該消息中顯示了query.orderbyDescending(objectId1)。 如果您不熟悉Parse,則有一列String數據稱為objectId,並且每行數據都有一個objectId。 選擇,投票,votes2,optionName和optionName2也都有自己的列。
var query = PFQuery(className: "VoteCount")
let objectId1: AnyObject! = voteCount1["objectId"]
query.orderByDescending(objectId1) {
(voteCount1: PFObject!, error: NSError!) -> Void in
if error != nil {
NSLog("%@", error)
} else {
voteCount1.incrementKey("votes")
voteCount1.saveInBackgroundWithTarget(nil, selector: nil)
let votes = voteCount1["votes"] as Int
let votes2 = voteCount1["votes2"] as Int
let option1: AnyObject! = voteCount1["optionName"]
let option2: AnyObject! = voteCount2["optionName2"]
self.pollResults1.text = "\(votes)"
self.showOption1.text = "\(option1)"
self.showOption2.text = "\(option2)"
}
}
我在這里的viewDidLoad方法中定義了所有變量:
var voteCount1 = PFObject(className: "VoteCount")
voteCount1["choices"] = 2
voteCount1["votes"] = Int()
voteCount1["votes2"] = Int()
voteCount1["optionName"] = String()
voteCount1["optionName2"] = String()
voteCount1["objectId"] = String()
我究竟做錯了什么? 我要做的就是從我的Parse數據控制器中的隨機objectId收集在viewDidLoad方法中定義的所有那些變量。 orderByDescending查詢不是這樣做的方法嗎?
orderByDescending
需要一個字符串,而您正在提供AnyObject!
。 請注意,如果您要分配一個非null值,則不必將變量聲明為隱式解包。 如果可以為null,則使用常規的可選,否則為非可選。
另外, PFObject
已經公開了objectId
字符串屬性,因此您不必使用下標即可檢索它:
let objectId1 = voteCount1.objectId
但是我注意到您的代碼中存在一個概念上的錯誤:您不按字段值對查詢進行排序-您按字段鍵(即字段名)進行查詢:
query.orderByDescending("objectId")
此外,我敢肯定的是, objectId
它被存儲時,會自動分配一個唯一的值,所以你不必為一個值分配給它,就像你在你的代碼的最后一行所做的:
voteCount1["objectId"] = String()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.