2015-11-05 60 views
0

有沒有辦法在解析時更新一個數字,而不僅僅是通過替換它或創建一個新的對象id,然後刪除舊的對象,而是通過實際增加parse上存儲值的值和新值添加到它。 IE瀏覽器。 解析:Correct = 5;在應用上:Correct = 10;在解析新值:15解析時更新值

這是我的代碼,但它只是用新的值創建一個新的對象ID每次...

func saveScoresOnParse() { 
    scores["Right"] = rightAnswers 
    scores["Wrong"] = wrongAnswers 
    scores["Skipped"] = skippedQuestions 
    scores["User"] = PFUser.currentUser() 
    scores.saveInBackground() 
} 

在解析: on parse

我想要的值加起來,並且每個人只有一個目標。

+0

使用' - incrementKey:byAmount:' – PowHu

+0

如何使用它? @PowHu –

+0

https://www.parse.com/docs/ios/guide#objects-counters – PowHu

回答

0
let scoreQuery = PFQuery(className: "Scores") 
scoreQuery.whereKey("user", equalTo: PFUser.currentUser()!) 
scoreQuery.getFirstObjectInBackgroundWithBlock { (object, error) -> Void in 
    if error == nil { 
     if let scores = object { 
     scores["Right"] = rightAnswers 
     scores["Wrong"] = wrongAnswers 
     scores["Skipped"] = skippedQuestions 
     scores.saveInBackground() 
     } 
    } 
} 
+0

我已經試過了。這會根據當前變量的值更新值,即如果保存的解析分數是5,並且我要保存的新分數是6,則解析後新保存的分數將是11,而不是6. –

+0

哦,你想要什麼它會查詢分數以找到用戶的分數。然後你可以在完成塊中更新它。我會稍微更新代碼。 –