0

配列内のランダムな値を「objectId"EXC_BAD_INSTRUCTION" 」と表示されているクエリに呼び出そうとしていますが、「」と表示されている場所でエラーが発生しますlet votes = voteCount1["votes"] as Int。それは私IBActionの機能の下にありますaddVote1

どこが間違っていますか?Parse データ コントローラーの特定の行 (特定の objectId を持つ各変数) 内にある各変数の値を取得し、その行内の対応する変数に投票を送信しようとしていますが、エラーが発生します。エラーが発生しない唯一の方法は、「objectId」の代わりに objectId を明確に定義することquery.getObjectInBackgroundWithId("objectId")です。どこで間違っている可能性がありますか?

override func viewDidLoad() {
    super.viewDidLoad()
    // Do any additional setup after loading the view, typically from a nib.

    var voteCount1 = PFObject(className: "VoteCount")
    voteCount1["choices"] = 2
    voteCount1["votes"] = Int()
    voteCount1["votes2"] = Int()
    voteCount1["optionName"] = String()
    voteCount1["optionName2"] = String()

    var voteCount2 = PFObject(className: "VoteCount2")
    voteCount2["choices"] = 3
    voteCount2["votes"] = Int()
    voteCount2["votes2"] = Int()
    voteCount2["votes3"] = Int()
    voteCount2["optionName"] = String()
    voteCount2["optionName2"] = String()
    voteCount2["optionName3"] = String()

    var voteCount3 = PFObject(className: "VoteCount3")
    voteCount3["choices"] = 4
    voteCount3["votes"] = Int()
    voteCount3["votes2"] = Int()
    voteCount3["votes3"] = Int()
    voteCount3["votes4"] = Int()
    voteCount3["optionName"] = String()
    voteCount3["optionName2"] = String()
    voteCount3["optionName3"] = String()
    voteCount3["optionName4"] = String()

    let array = ["BiEM17uUYT", "TtKGatVCi9"]
    let randomIndex = Int(arc4random_uniform(UInt32(array.count)))
    let objectId = array[randomIndex]




}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
    // Dispose of any resources that can be recreated.
}

@IBOutlet weak var pollResults1: UILabel!

@IBAction func addVote1(sender: AnyObject) {
    var query = PFQuery(className: "VoteCount")
    query.getObjectInBackgroundWithId("objectId") {
        (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
        self.pollResults1.text = "\(votes)"
        }
    }
}
4

1 に答える 1