"firebase.firestore().collection().where(_, _, *) 'value' n'est pas un filtre valide. Le filtre 'not-in' prend en charge jusqu'à 10 éléments dans le tableau de valeurs."
P粉833546953
2023-09-04 22:44:17
<p>firebase.firestore().collection().where(_, _, *)"值"无效。 "not-in"过滤器支持值数组中最多包含 10 个元素。</p>
<pre class="brush:php;toolbar:false;">unlangues = firestore()
.collection("utilisateurs")
---> .where("id", "not-in", [...passedUserIds, ...smashesUserIds])
.onSnapshot(requête asynchroneSnapshot => {
if (querySnapshot?.docs?.length > 0) {
laissez dondur2 = attendre querySnapshot?.docs
.filter((doc) => doc.id != user.uid)
.filter((doc) => doc._data.gender !=loggéInProfile.gender)
.filter((doc) => doc._data.age <= `${value[1]}`)
.filter((doc) => doc._data.age >= `${value[0]}`)
.filter((doc) =>
doc._data.linguals[0] == langues ||
doc._data.langues[1] == langues ||
doc._data.langues[2] == langues ||
doc._data.langues[3] == langues ||
doc._data.langues[4] == langues ||
doc._data.langues[5] == langues ||
doc._data.langues[6] == langues ||
doc._data.linguals[7] == langues
)
.map((doc) => ({ identifiant : doc.id, ...doc.data() }))
setProfiles(dondur2)
}
})</pré>
<p>没有用。</p>
La traduction de cette phrase est la suivante :
Vous avez probablement plus de 10 éléments dans le
[...passedUserIds, ...smashesUserIds]
tableau.Il s'agit d'une limitation de Firestore. La seule façon de contourner cette limitation est soit d'ajuster votre modèle de données, soit de trouver un moyen de réduire le nombre d'éléments dans le tableau. Sans voir des exemples réels de vos données, il est difficile de donner des conseils supplémentaires.