NCMBのiOS SDKは正式にはSwiftをサポートしておらず、サンプルのコードもObjective-Cとなっています。Swiftはすでに3が主流となっており、利用者も増えています。そこでNCMB iOS SDKをSwiftでどう使えば良いかをコード例を用いつつ紹介します。
今回はiOS SDKでのデータストアのOR検索を解説します。
データストアのクエリクラス作成
まずデータストアのクエリクラスを作成します。この時、条件に合わせて複数作成します。
// 一つ目のクエリ let query1 = NCMBQuery.init(className: "todoClass")! query1.whereKey("todo", equalTo: "制限付き") // 二つ目のクエリ let query2 = NCMBQuery.init(className: "todoClass")! query2.whereKey("todo", equalTo: "制限あり")
検索条件を結合する
そして検索条件をOR結合します。
let query = NCMBQuery.orQuery(withSubqueries: [query1, query2])
このように NCMBQuery.orQuery
を使うのがポイントです。そして配列でクエリを指定します。これは複数指定できるようです。
検索する
後は検索を実行するだけです。
query?.findObjectsInBackground({(results, error) in if error != nil { print("error", error ?? "") } else { print(results ?? "") } })
これでOR条件にマッチするデータが抽出できます。
まとめ
OR条件を使うことで、よりデータの絞り込みが可能になります。ぜひ使い方を覚えてください。