如何在Swift中将数据从Parse保存到本地CoreData

时间:2015-12-15 15:12:32

标签: ios swift core-data parse-platform

那么如何将我从Parse获得的数据保存到应用程序中的本地CoreData

这是我用来从Parse获取数据的查询:

override func queryForTable() -> PFQuery {

    let query = PFQuery(className: "News")
    query.cachePolicy = PFCachePolicy.NetworkElseCache
    query.orderByDescending("updatedAt")
    return query

}

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath, object: PFObject?) -> PFTableViewCell? {

    let cell = tableView.dequeueReusableCellWithIdentifier("cell", forIndexPath: indexPath) as! NewsCell

    cell.NewsTitle.text = object?.objectForKey("NewsTitle") as? String 
    cell.NewsSubject.text = object?.objectForKey("NewsSubject") as? String


    let imagefile = object?.objectForKey("NewsImage") as? PFFile
  //  cell.NewsImage.image = UIImage(named: "News Title")
    cell.NewsImage.file = imagefile
    cell.NewsImage.loadInBackground()


    return cell


}

2 个答案:

答案 0 :(得分:0)

只需使用您想要拥有的所有对象创建核心数据模型(我还建议您查看https://github.com/rentzsch/mogenerator以便轻松管理核心数据对象)),并创建/修改/删除对象中的对象。核心数据模型,将它们与您从解析中获得的数据同步。

答案 1 :(得分:0)

您可以简单地使用UserDefaults :(以下示例适用于" newsTitle")

let userDefaults = NSUserDefaults.standardUserDefaults()
// Set newsTitle in NSUserDefaults
let temp = object?.objectForKey("NewsTitle") as? String
userDefaults.setValue(temp, forkey: "newsTitle")
userDefaults.synchronize()
// Get newsTitle in NSUserDefaults
cell.newsTitle.text = userDefaults.stringForKey("newsTitle")

如果您还有其他问题,请随时提出。

**** *****更新

getPicFromUser = userDefaults.dataForKey("userPic")
var image = UIImage()

if getPicFromUser != nil {
   image = UIImage(data: getPicFromUser!)!
} else {
   // no pic from nsdefaults
}
userPic.image = image

**** *****更新