SwiftはiOS17からSwiftDataが使えますが、今のプロジェクトはiOS16と決まっているのでRealmを使っています。
そんなRealmではNSPredicateでの検索は終わりwhereで検索する時代が来たそうです。
よーし試してみるかと、よくあるQueryをappendして結合する昔ながらのQueryを作成しようとしたのですが、マニュアルを読み返してもやり方が不明です。
流石に最近は誰も使わないのか?そんな筈ないやろとRealmのIssueを探すとありました。
結果としてRealmには実装がないそうです。
そうなると真面目に実装すると冗長なコードになるのが請け合いです。
Issueに投稿した方はサンプルコードも提供いただいてたので試しに動かしてみたのがページの下にあるコードです。
このIssueのコードでは条件がなかった場合の回避方法の記載はありませんでした。
とりあえずデフォルトのクエリをTodoのテキストが空以外を検索として登録しておきました。
サンプルコード