昨日はParseを簡単に触ってみたので次はデータ操作をしてみようと思います。
データの作成
データの作成は以下のように行います。
let testObject = PFObject(className: "TestObject") testObject["foo"] = "bar" testObject.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in print("Object has been saved.") }
データの取得
IDで指定したオブジェクトの取得は下の通りです。
let query = PFQuery(className: "TestObject") query.getObjectInBackgroundWithId("ObjectID", block: { object, error in print(object) })
データ一覧の取得はfindObjectsメソッドを利用します。
let query = PFQuery(className: "TestObject") let objects = try? query.findObjects() print(objects)
条件指定をしたい場合はqueryのwhereKeyを呼び出します。
let query = PFQuery(className: "TestObject") query.whereKey("foo", containedIn: ["bar"]) let objects = try? query.findObjects() print(objects)
今回は取り上げなかったのですが、NSPredicateを使った柔軟な取得やlimitを使った件数指定での取得もできるようです。
データの更新
データの更新は作成同様にsaveInBackgroundWithBlock
で実施します。
let query = PFQuery(className: "TestObject") query.getObjectInBackgroundWithId("ObjectID", block: { object, error in object?["foo"] = "barbar" object?.saveInBackgroundWithBlock { (success: Bool, error: NSError?) -> Void in print("Object has been saved.") } })
データの削除
データの削除はdeleteInBackground
メソッドで実施します。
let query = PFQuery(className: "TestObject") query.getObjectInBackgroundWithId("ObjectID", block: { object, error in object?.deleteInBackground() })