Как можно объединить две разные коллекции, используя угловые? Firebase Cloud - PullRequest
0 голосов
/ 07 ноября 2019

Здравствуйте, у меня следующая ситуация: у меня есть коллекция с именем authors, которая имеет эту структуру authors: {id, firstname, lastname, state}, и коллекция с именем books: {id, name, year, authorId}, и я хочу иметь возможность делать множество книг, используя authors черезвыбор в качестве обязательного поля, вопрос в том, что я не смог этого достичь, и я хотел бы знать, может ли кто-нибудь помочь мне.

Я использую angular 7 и firebasecloud.

это мой код для службы моих авторов

    export class AuthorService {
      private authsCollection: AngularFirestoreCollection<AuthorModel>;
      auths: Observable<AuthorModel[]>;
      constructor(private afs: AngularFirestore) {
        this.authsCollection = this.afs.collection<AuthorModel>('authors');
      }

      createAuthor(author: AuthorModel) {
        return this.authsCollection.add(JSON.parse(JSON.stringify(author)));
      }

      getAuthor(id: string): Observable<AuthorModel> {
        const authorsDocuments = this.afs.doc<AuthorModel>('authors/' + id);
        return authorsDocuments.snapshotChanges()
          .pipe(
            map(changes => {
              const data = changes.payload.data();
              const id = changes.payload.id;
              return { id, ...data };
            }))
      }

      getAllAuthors() {
        return this.authsCollection.snapshotChanges();
      }

      updateAuthorById(author: AuthorModel) {
        return this.afs.doc('authors/'+author.id).set(JSON.parse(JSON.stringify(author)));
      }

      deleteAuthor(id: string){
        const authorsDocuments = this.afs.doc<AuthorModel>('authors/' + id).delete();
        return authorsDocuments;
    }

}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...