2015-11-05 3 views
0

Есть ли способ обновить число при разборе, а не просто заменить его или создать новый идентификатор объекта, а затем удалить старый, но фактически увеличить значение из хранимого значения при анализе, а новое значение будет добавлено к нему. То есть. На разборке: Правильно = 5; В приложении: Правильно = 10; Новое значение на разборе: 15Обновить значения при разборе

Это мой код, но он просто создает новый идентификатор объекта с новыми значениями каждый раз, когда ...

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

Я уже пробовал это. Это обновляет значение на текущую величину переменной, т. Е. Если сохраненная оценка в синтаксисе составляла пять, и моя новая оценка, которую нужно сохранить, равна 6, новая сохраненная оценка на синтаксисе будет равна 11, а не 6. –

+0

О, что вы хотите сделайте это, чтобы запросить оценки, чтобы найти тот, у кого есть пользователь. Затем вы можете обновить его в блоке завершения. Я немного обновлю код. –

Смежные вопросы