如何在 Parse 中获取对象 ID
How to get the Object ID in Parse
我试图在后台找到objectID,以便在后台成功取消固定和删除对象。但是,objectID 出于某种原因返回 nil 值,从而导致应用程序崩溃。
这是一些代码 -
(imagesToDelete 是一个 PFFile 数组)
for object in imagesToDelete
{
var imageObject = PFObject(className: "img")
imageObject["theImg"] = object
//Object ID Returns nil
var objID = imageObject.objectId
//fatal error: unexpectedly found nil while
imageObject.removeObjectForKey(objID!)
imageObject.unpinInBackgroundWithBlock({ (success, error) -> Void in
if error == nil
{
imageObject.deleteEventually()
println("Objects deleted!")
}
else
{
println(error)
}
})
}
这个 var objID = imageObject.objectId 永远不会工作,因为 imageObject 是 PFObject 的一个实例,所以你只能用那个对象保存一个特定的 id 或者使用默认的parse 提供的 objectID。
示例:
// let's save an object using a specific id
var savingObject = PFObject(classname:"")
savingObject["id"] = 123213
// then you save this object to parse
当涉及删除该对象时,您必须使用 PFQuery 在后台查询该对象,然后您可以获得我们特定的 id或来自 parse.
的默认 id objectId
示例:
// let's query and delete that object
var query = PFQuery(classname:"")
query.whereKey("id", equalTo:123213)
// then you use that findObjectInBackgroundWithBlock() method then delete the object.
即使您在本地保存,您也几乎使用相同的概念希望对您有所帮助。
我试图在后台找到objectID,以便在后台成功取消固定和删除对象。但是,objectID 出于某种原因返回 nil 值,从而导致应用程序崩溃。
这是一些代码 -
(imagesToDelete 是一个 PFFile 数组)
for object in imagesToDelete
{
var imageObject = PFObject(className: "img")
imageObject["theImg"] = object
//Object ID Returns nil
var objID = imageObject.objectId
//fatal error: unexpectedly found nil while
imageObject.removeObjectForKey(objID!)
imageObject.unpinInBackgroundWithBlock({ (success, error) -> Void in
if error == nil
{
imageObject.deleteEventually()
println("Objects deleted!")
}
else
{
println(error)
}
})
}
这个 var objID = imageObject.objectId 永远不会工作,因为 imageObject 是 PFObject 的一个实例,所以你只能用那个对象保存一个特定的 id 或者使用默认的parse 提供的 objectID。 示例:
// let's save an object using a specific id
var savingObject = PFObject(classname:"")
savingObject["id"] = 123213
// then you save this object to parse
当涉及删除该对象时,您必须使用 PFQuery 在后台查询该对象,然后您可以获得我们特定的 id或来自 parse.
的默认 id objectId示例:
// let's query and delete that object
var query = PFQuery(classname:"")
query.whereKey("id", equalTo:123213)
// then you use that findObjectInBackgroundWithBlock() method then delete the object.
即使您在本地保存,您也几乎使用相同的概念希望对您有所帮助。