Parse.com试图用Swift中的findObjectsInBackgroundWithBlock保存一个新的未保存子对象
以下是实体的定义:Parse.com试图用Swift中的findObjectsInBackgroundWithBlock保存一个新的未保存子对象,swift,parse-platform,where,Swift,Parse Platform,Where,以下是实体的定义: class Event : PFObject, PFSubclassing { override class func load() { superclass()?.load() self.registerSubclass() } class func parseClassName() -> String! { return "Event" } } ˚ 现在我尝试检索属于事件的团队列表:
class Event : PFObject, PFSubclassing {
override class func load() {
superclass()?.load()
self.registerSubclass()
}
class func parseClassName() -> String! {
return "Event"
}
}
˚
现在我尝试检索属于事件的团队列表:
var teams: [Team] = []
var query = PFQuery(className: "Team")
query.includeKey("event")
if (event != nil) {
query.whereKey("event", equalTo: event)
}
query.cachePolicy = kPFCachePolicyCacheThenNetwork
query.findObjectsInBackgroundWithBlock { (objects: [AnyObject]!, error:NSError!) -> Void in
我得到的错误是
[错误]:捕获到“NSInternalInconsistencyException”,原因是“试图用新的未保存的子对象保存对象”。:
但是如果我删除whereKey语句:query.whereKey(“event”,equalTo:event),错误就会消失
任何帮助都将不胜感激。已经过去几个月了,所以我希望您现在已经解决了问题,但是您是否碰巧使用了匿名用户?有时,当您有一个尚未保存到云的新匿名用户时,会出现此错误。问题可以通过检查当前用户是否有objectId来解决,如果没有,则保存一个虚拟对象。您是否在尝试使用事件对象之前创建了它?在Swift中初始化PFObject的新子类时,我看到了类似的情况。