我有Firebase数据库的这种结构
每个图书馆都可以有多个相册。如何显示每个库的相册?
albumsPerLib:
第一个元素是库键,在每个库键下面,我存储属于它的专辑键。
但我不熟悉NoSQL,无法想象如何加入表来显示每个库的相册。
答案 0 :(得分:1)
这样可行:
getAlbumsThatBelongToLib(libKey:string):Observable<Album[]>{
//get the keys for the lib albums
const albumsPerLib$ = this.db.list(`albumsPerLib/${libKey}`);
//map the returned list of keys
//and get their details from the albums node
return albumsPerLib$
.map((albumKeys) => albumKeys
.map( (albumKey) => {
return this.db.object(`albums/${albumKey.$key}`)
}))
.flatMap((res) => {
return Observable.combineLatest(res);
});
}