前提・実現したいこと
FireStoreから、日付を使ってソートしてデータを取り出したいです。
具体的には、Firestore内の各データにTimeStamp型の「createdDay」というフィールドが含まれており、これを活用して取得時にソートしたいと思っています。
しかし、以下のソート処理を入れると取得できなくなってしまいます。
どのようにすれば取得できるか、ご教示ください。
該当のソースコード
SwiftUI
1 2//createdDayでのソート付近のコード 3let db = Firestore.firestore() 4 if let userID = userID { 5 db.collectionGroup("Something").whereField("userID", isEqualTo: userID).order(by: "createdDay").limit(to: 10).getDocuments{(snap, error) in 6・・・ 7
whereで検索したフィールドとは別フィールドでorderByで並び替えを行うときは複合インデックスが必要みたいです。エラーメッセージにその辺の情報が含まれてるらしいのですが、何か出てませんか?
https://tomokazu-kozuma.com/about-index-types-of-firebase-cloud-firestore/
遅くなりましたが、おっしゃる通り以下のサイトの通りに複合インデックスを登録したらできました。
ありがとうございました。
https://firebase.google.com/docs/firestore/query-data/indexing?hl=ja
回答1件
あなたの回答
tips
プレビュー