解析本地数据存储不显示固定数据
Posted
技术标签:
【中文标题】解析本地数据存储不显示固定数据【英文标题】:Parse Local DataStore not showing pinned data 【发布时间】:2015-12-17 18:54:26 【问题描述】:我已尝试确保在实施 Parse 本地数据存储时遵循所有推荐的步骤,但固定似乎不起作用或查询固定对象不起作用。我尝试了多种选择。下面是我的视图控制器代码,我还在应用程序委托文件中启用了数据存储等(使用基本解析启动项目)。请告诉我问题出在哪里。
我的控制台中的输出 - 我能够从解析服务器获取数据,但要么无法正确固定它或无法正确检索它或其他什么..
Success 8888
Optional([])
Push notifications are not supported in the ios Simulator.
success 7777
Optional([<Restaurant: 0x7f98ca521f60, objectId: 0rRZNCndje, localId: (null)>
Name = time;
])
感谢您的帮助!
import Foundation
import Parse
import ParseUI
import UIKit
import Foundation
class RestaurantAdmin: ViewController
func getDataFromLocalDataStore()
var userName = PFUser.currentUser()?.username
var messages2: [AnyObject]!
var query2: PFQuery = PFQuery(className: "Restaurant")
query2.fromLocalDatastore()
query2.whereKey("Owner", equalTo: userName!)
query2.findObjectsInBackgroundWithBlock (objects, error) -> Void in
if (error == nil)
messages2 = objects
println(" Success 8888 ")
println(objects)
else
println("Fail 8888")
func refreshRestaurantDataFromServer()
var userName = PFUser.currentUser()?.username
var query = PFQuery(className: "Restaurant")
query.whereKey("Owner", equalTo: userName!)
query.selectKeys(["Name"])
var messages: [AnyObject]!
query.findObjectsInBackgroundWithBlock (objects, error) -> Void in
if (error == nil)
PFObject.pinAllInBackground(objects, block: nil)
println("success 7777")
println(objects)
else
println("error 7777")
override func viewDidAppear(animated: Bool)
super.viewDidAppear(animated)
if (PFUser.currentUser()?.username != nil)
refreshRestaurantDataFromServer()
getDataFromLocalDataStore()
【问题讨论】:
【参考方案1】:由于您使用的是query.selectKeys(["Name"])
,因此不会下载整个对象。现在您正在保存这个部分对象,然后使用query2.whereKey("Owner", equalTo: userName!)
进行查询。保存的对象不包含"Owner"
键。
【讨论】:
嗨 Santhosh,我什至评论了 query2.whereKey("Owner", equalTo: userName!) 我现在期待所有类 Restaurant 的对象都会被查询。我的查询中仍然没有任何数据。我需要做些不同的事情吗? 我尝试下载整个对象并且成功了。非常感谢您的帮助。 如果您发现我的回答有用,请将其标记为答案。谢谢。 一个问题,我们可以使用 parse 像 SQLite 和 Core-Data 一样只在本地存储数据吗?以上是关于解析本地数据存储不显示固定数据的主要内容,如果未能解决你的问题,请参考以下文章
在 Parse SDK Android 中使用未保存的 id null 固定对象查询本地数据存储