J'aimerais faire une requête de groupe de collection mais à l'intérieur d'un certain chemin, c'est-à-dire que j'aimerais cibler les collections non seulement avec le collectionId mais aussi avec l'endroit où se trouve la collection.
Reprenons l'exemple utilisé dans la documentation pour mieux l'expliquer. Nous aurions des points de repère dans les villes et des points de repère "généraux" dans leur propre collection :
let citiesRef = db.collection('cities');
let landmarks = Promise.all([
citiesRef.doc('SF').collection('landmarks').doc().set({
name: 'Golden Gate Bridge',
type: 'bridge'
}),
citiesRef.doc('SF').collection('landmarks').doc().set({
name: 'Legion of Honor',
type: 'museum'
}),
citiesRef.doc('LA').collection('landmarks').doc().set({
name: 'Griffith Park',
type: 'park'
}),
citiesRef.doc('LA').collection('landmarks').doc().set({
name: 'The Getty',
type: 'museum'
}),
citiesRef.doc('DC').collection('landmarks').doc().set({
name: 'Lincoln Memorial',
type: 'memorial'
})
]);
let generalLandmarks = Promise.all([
db.collection('landmarks').doc().set({
name: 'National Air and Space Museum',
type: 'museum'
}),
db.collection('landmarks').doc().set({
name: 'Ueno Park',
type: 'park'
}),
db.collection('landmarks').doc().set({
name: 'National Museum of Nature and Science',
type: 'museum'
}),
db.collection('landmarks').doc().set({
name: 'Jingshan Park',
type: 'park'
}),
db.collection('landmarks').doc().set({
name: 'Beijing Ancient Observatory',
type: 'museum'
})
]);
J'aimerais maintenant rechercher des points de repère situés dans une ville et ne pas obtenir les points de repère généraux. Plus simplement, j'aimerais faire quelque chose comme ceci :
let museums = db.collection('cities').collectionGroup('landmarks').where('type', '==', 'museum');
Est-ce possible ?