簡體   English   中英

創建對象時獲取對象ID(Parse.com)

[英]Get the object id when the object is created (Parse.com)

我想在下面創建對象時將字符串值設置為對象id。 目前它打印“nil”。 有任何想法嗎? 謝謝

    var date:NSDate = currentDatePicker.date
    var DOB:NSDate = DOBPicker.date

    var user = PFUser.currentUser()

    var report = PFObject(className:"reports")
    report["name"] = nameTextField.text
    report["DOB"] = DOB
    report["date"] = date
    report["user"] = user
    report.saveInBackground()

    var ojId = report.objectId
    println(ojId)

saveInBackground是一個異步方法,所以它不會等待。 未設置id的原因是因為尚未保存實體。

我認為你應該使用saveInBackgroundWithBlock:並檢索塊中的對象id形式(在實體保存后執行):

var report = PFObject(className:"reports")
report["name"] = nameTextField.text
report["DOB"] = DOB
report["date"] = date
report["user"] = user
report.saveInBackgroundWithBlock { (success, error) -> Void in
    if success {
        var ojId = report.objectId
        println(ojId)
    }
}

或者也可以save ,這是同步執行的 - 但不要使用主線程中的那個:

report.save()
var ojId = report.objectId
println(ojId)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM