検索

ホームページ  >  に質問  >  本文

「firebase.firestore().collection().where(_, _, *) 'value' は有効なフィルターではありません。「not-in」フィルターは、値配列内の最大 10 個の要素をサポートします。

<p>firebase.firestore().collection().where(_, _, *) '値' が無効です。 「not-in」フィルターは、値配列で最大 10 個の要素をサポートします。 </p> <pre class="brush:php;toolbar:false;">unlangages = firestore() .collection("ユーザー") --> .where("id", "not-in", [...passedUserIds, ...smashesUserIds]) .onSnapshot(async querySnapshot => { if (querySnapshot?.docs?.length > 0) { let dondur2 = await querySnapshot?.docs .filter((doc) => doc.id != user.uid) .filter((doc) => doc._data.gender != loggedInProfile.gender) .filter((doc) => doc._data.age <= `${value[1]}`) .filter((doc) => doc._data.age >= `${value[0]}`) .filter((doc) => doc._data.langages[0] == 言語 || doc._data.langages[1] == 言語 || doc._data.langages[2] == 言語 || doc._data.langages[3] == 言語 || doc._data.langages[4] == 言語 || doc._data.langages[5] == 言語 || doc._data.langages[6] == 言語 || doc._data.langages[7] == 言語 ) .map((doc) => ({ id: doc.id, ...doc.data() })) setProfiles(dondur2) } })</pre> <p>ここで問題が発生しました。「ids」が 10 を超えています。どのように解決すればよいでしょうか?他の質問も見ましたが、うまくいきませんでした。 </p>
P粉833546953P粉833546953529日前649

全員に返信(1)返信します

  • P粉193307465

    P粉1933074652023-09-05 21:19:51

    この文の翻訳は次のとおりです:

    リーリー

    [...passedUserIds, ...smashesUserIds] 配列には 10 個を超える要素がある可能性があります。

    これは Firestore の制限です。 この制限を回避する唯一の方法は、データ モデルを調整するか、配列内の要素の数を減らす方法を見つけることです。データの実際の例を見ないと、さらにアドバイスするのは困難です。

    返事
    0
  • キャンセル返事