本地数据存储(固定)不与Parse一起使用

时间:2015-11-26 15:20:59

标签: parse-platform

我通过Cocoapods使用Parse。 我在setAppId之前调用Parse.enableLocalDatastore() 我用这个返回success = true

的查询来固定一个对象
self.pinInBackgroundWithBlock({ (success, error) -> Void in
                if success{
                    print("ok")
                }
                else{
                    print("error")
                }
            })

我尝试使用以下内容检索对象:

let query = PFQuery(className: "Movie")
    query.fromLocalDatastore()
    query.findObjectsInBackgroundWithBlock { (objects, error) -> Void in
        if let movies = objects as? [Movie]{
            print(movies.count)
            if movies.count == 0{
                //Update
            }
        }
    }

它总是返回0.

我使用PFSubclassing协议将PFObject子类化为以下内容:

class Movie: PFObject,PFSubclassing {

@NSManaged var title:String
@NSManaged var movieId:NSNumber
@NSManaged var popularity:NSNumber
@NSManaged var poster_path:String
@NSManaged var vote:NSNumber

override class func initialize() {
    struct Static {
        static var onceToken : dispatch_once_t = 0;
    }
    dispatch_once(&Static.onceToken) {
        self.registerSubclass()
    }
}

static func parseClassName() -> String {
    return "Movie"
}

}

你有什么线索吗?谢谢。

1 个答案:

答案 0 :(得分:0)

我发现了这个问题。

我正在使用selectKeys()来仅检索必要的内容。它可能会停用未完全取出的对象的固定。