【やりたいこと】
文字列でプロパティ名を指定してフィルタリングしたい
【出来たこと】
以下の変数を用いたid検索は実現することは出来ました
swift
1 let realm = try! Realm() 2try! realm.write { 3let 検索結果 = realm.objects(todo.self).filter("id == '(self.realmID[indexPath.row - 1])'") 4 5省略 6}
【わからないこと】
変数を用いずにフィルタをかけると以下のエラーが出ました。
Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Unable to parse the format string "id == '任意'"'
swift
1 2 let filterRealm = realm.objects(todo.self).sorted(by: sortProperties).filter("id == '任意'") 3
しかし、NSPredicateクラスを使用したクエリを用いた場合は意図通りに動きました。
swift
1 let sortRealm = realm.objects(todo.self).sorted(by: sortProperties).filter("%K == %d", "id", "任意")
【教えていただきたいこと】
文字列によるクエリを用いたフィルタリング操作方法を教えていただきたいです。
以下のhpを参考にしました。
https://swift.hiros-dot.net/?p=632#toc15
【クラスの定義】
swift
1import Foundation 2import RealmSwift 3 4class todo: Object { 5 @objc dynamic var id:String = "" 6)
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/03 01:58
2020/05/03 03:12