オブジェクトをローカルデータストアにパースして保存するアプリを構築しています。次に、クエリを実行してローカル データストアにあるオブジェクトを取得しましたが、問題なく動作しています。ただし、オブジェクトとその内容を取得し、解析ローカル データ ストア オブジェクトに格納されている項目に基づいてテーブル ビュー セルにいくつかのラベルを設定したいと考えています。たとえば、「objectID」、「name」、「date」、「location」などの属性を持つオブジェクトを作成します。私がやりたいのは、名前、日付、場所などを表示するテーブルビューをホーム画面に表示することです. 各セルのラベルでローカル データストアに保存された各アイテムの。
私はそれを正しく保存していることを知っています:
// parse location object
let parseLighthouse = PFObject(className: "ParseLighthouse")
parseLighthouse.setObject(PFUser.currentUser()!, forKey: "User")
parseLighthouse["Name"] = self.placeTitle.text
parseLighthouse["Note"] = self.placeNote.text
parseLighthouse["Locality"] = self.placeDisplay.text!
parseLighthouse["Latt"] = self.map.region.center.latitude
parseLighthouse["Longi"] = self.map.region.center.longitude
parseLighthouse["LattDelta"] = 0.5
parseLighthouse["LongiDelta"] = 0.5
parseLighthouse["Date"] = dateInFormat
parseLighthouse.pinInBackground()
parseLighthouse.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in
println("Object has been saved. ID = \(parseLighthouse.objectId)")
}
クエリを実行すると、println(object.objectForKey("Name")) を実行して属性にアクセスできます
func performQuery() {
let query = PFQuery(className: "ParseLighthouse")
query.fromLocalDatastore()
query.whereKey("User", equalTo: PFUser.currentUser()!)
query.findObjectsInBackgroundWithBlock { (objects, error) -> Void in
if error == nil {
// The find succeeded.
println("Successfully retrieved \(objects!.count) lighthouses.")
// Do something with the found objects
if let light = objects as? [PFObject] {
for object in light {
println(object.objectId)
println(object.objectForKey("Name"))
}
}
} else {
// Log details of the failure
println("Error: \(error!) \(error!.userInfo!)")
}
}
クエリを実行すると、期待どおりにオブジェクト ID と名前が返されるためです。
2 つの灯台の取得に成功しました。オプション("A3OROVAMIj") オプション(ハッピー) オプション("bbyqPZDg8W") オプション(日付テスト)
私がやりたいのは、解析オブジェクトのローカル データ ストア内の名前フィールドを取得することです。これは、テーブル ビュー コントローラーのセルのラベルの名前です。
オブジェクトからその情報にアクセスし、ラベルを正しく設定する方法がわかりません。
これがどのように可能か知っている人はいますか?