私はトップ10リストを作成しています。私は、価値を持つためにある項目の価値を必要とし、ある人が同意するたびにその価値を増やす必要があります。現在は更新されていませんが、同じ値を追加してすぐに消滅しようとしています。ここに私のFirebaseスタックがあります....Firebaseの値はSwiftでインクリメントされませんか?
TopVideos-->
yWfsla_Uh80-->
Value: 1
description: "Download on iTunes : KOR https://itunes.apple.c..."
imageString: "https://i.ytimg.com/vi/yWfsla_Uh80/default.jpg"
rank: 1
title: "EXO_CALL ME BABY_Music Video"
user: "6ef370d4-a1bd-48ce-9ae0-93d2e20f3bc8"
videoID: "yWfsla_Uh80"
"値"の子ノードを増やしたいのですが、それは起こっていません。ここに私のコードがあります....
topVideoRef.childByAppendingPath("Value").runTransactionBlock({
(currentData:FMutableData!) in
var value = currentData.value as? Int
if value == nil {
value = 0
}
currentData.value = value! + 1
return FTransactionResult.successWithValue(currentData)
})
私はその手紙のFirebaseガイドに従っていますが、私は何か不足しているかもしれません。 BTW ...あなたが答えを知っているならば、値を減らす方法も含めてください。ありがとうございました。
* UPDATE *
私はそう.....
vidRank = Int(self.rankValue.text!)!
let vidArray = ["user" : self.ref.authData.uid, "videoID": self.videoId, "rank": self.vidRank, "title": self.vidTitleText, "description": self.vidDescription, "imageString": self.vidIMG]
let topVideoRef = self.ref.childByAppendingPath("TopVideos/\(self.videoId)")
topVideoRef.setValue(vidArray)
'topVideoRef'の作成方法を表示できますか? –
@DavidEast投稿を更新しました。また、私は 'value!++'と 'currentData.value.updateChildValues'を試しました。私はそれらを間違って書いたかもしれませんが。 –
成功コールバックは何を言わなければなりませんか?エラーはありますか?それはコミットですか?それが成功しなかったとあなたはどのように判断しましたか?データベースの現在の値は何ですか?認証状態とは何ですか?どのようなセキュリティルールが適用されていますか? [How to Ask](http://stackoverflow.com/help/how-to-ask)と[mcveを作成する](http://stackoverflow.com/help/mcve)を参照してください。 – Kato