Я хотел бы сделать запрос к группе коллекций, но по определенному пути, что означает, что я хотел бы нацеливать коллекции не только с collectionId, но и с тем, где находится коллекция.
Давайте использовать примериспользуется в документе, чтобы объяснить это лучше.У нас были бы ориентиры в городах и «общие» ориентиры в их собственной коллекции:
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'
})
]);
Теперь я хотел бы запросить ориентиры, которые находятся в городе, а не получить общие.Проще говоря, я хотел бы сделать что-то вроде этого:
let museums = db.collection('cities').collectionGroup('landmarks').where('type', '==', 'museum');
Возможно ли это?