簡體   English   中英

如何在 Firestore 雲 function 中創建帶有子集合的文檔?

[英]How to create a document with a subcollection within Firestore cloud function?

嗨,我想通過雲 function 觸發器使用private子集合創建以下文檔:

在此處輸入圖像描述

這是我到目前為止所擁有的,但也不知道如何實際設置子集合。

"use strict";
Object.defineProperty(exports, "__esModule", {value: true});

// Cloud Functions for Firebase SDK to create Cloud Functions + set up triggers.
const functions = require("firebase-functions");

// The Firebase Admin SDK to access Firestore.
const admin = require("firebase-admin");
admin.initializeApp(functions.config().firebase);

// Listen to .onCreate trigger
exports.createProfile = functions.auth.user().onCreate((user) => {
  return admin.firestore().doc(`/users/${user.uid}`).set({
    firstName: null,
    lastName: null,
    preferredName: null,
  });
});

對文檔的引用可以通過交替的collectiondoc引用來形成。 把它拼出來有點過火了......

const usersCollectionRef = firestore().collection('users')
const userRef = usersCollectionRef.doc(user.uid);
const privatesCollectionRef = userRef.collection('private');
const accountRef = privatesCollectionRef.doc('account');

return accountRef.set(...)

// or, the other extreme lines-of-code-wise
const accountRef = firestore().doc(`/users/${user.uid}/private/account`)
return accountRef.set(...)

請注意,您一次只能在“私人”集合中擁有一個名為“帳戶”的文檔。 不確定您的應用程序的語義,但該文檔中用戶的 email 可能是更好的文檔名稱。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM