簡體   English   中英

如何防止Cloud Firestore拆分地圖密鑰?

[英]How do I prevent Cloud Firestore from splitting map key?

我正在嘗試通過添加地圖從Cloud Function更新Firestore中的文檔,如下所示:

const data = {
        [email]: {
            somedata: somedata,
            somedata: somedata
        }
    };
docRef.update(data)

問題是Firestore正在拆分電子郵件並創建嵌套地圖。 例如,如果電子郵件為name@email.com,則存儲在Firestore中的值為:

name@email
  com
    somedata: somedata
    somedata: somedata

我希望不要拆分電子郵件。 Firestore有可能嗎?

電子郵件地址中帶有句點( . )字符。 如您在示例中以原始字符串形式給出時,該字符被視為字段分隔符。 Firestore所做的假設是,您想要將一個具有“ com”屬性的“ name @ email”字段設置為指定對象的值。 請參閱文檔中的 “字段路徑上的約束”。

我不認為有辦法解決這個問題。 在訪問數據庫之前,您可能需要將該點轉換為其他字符(可能是電子郵件地址中不能出現的其他字符)。 您使用該字段的所有查詢都必須進行類似的翻譯。

暫無
暫無

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

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