【问题标题】:Reference type in firestoreFirestore 中的引用类型
【发布时间】:2020-11-04 14:43:20
【问题描述】:

我正在尝试在 Firestore 中实现文档引用。我创建了两个集合:CustomersPurchased-Property。每次在Purchased-Property 集合中创建新文档时,我如何在Purchased-Property_Customer_id 中引用Customer_id。 代码如下:

 const CustomerDoc = firebase.firestore().collection("Customers").doc()
CustomerDoc.set({
       Customer_id: CustomerDoc.id,
       Customer_Name: Name
       Customer_PhoneNumber: PhoneNumber

    })

const PurchasedPropertyDoc = firebase.firestore().collection("Purchased-Property").doc()
    PurchasedPropertyDoc.set({
           Purchased_Property_id: PurchasedPropertyDoc.id,
           Purchased_Property_Name: Property_Name,
           Purchased_Property_Location: Property_Location,
           Purchased_Property_Customer_Id: Customer_Id   //How do i make  reference to this Customer_Id in the Customers collection everytime a new document under the Purchased-Property collection is made 


    
        })

【问题讨论】:

    标签: javascript firebase react-native google-cloud-firestore


    【解决方案1】:

    CustomerDoc 是一个 DocumentReference 对象。每个 DocumentReference 都有一个 id 属性。您可以像这样简单地使用它:

        PurchasedPropertyDoc.set({
               Purchased_Property_id: PurchasedPropertyDoc.id,
               Purchased_Property_Name: Property_Name,
               Purchased_Property_Location: Property_Location,
               Purchased_Property_Customer_Id: CustomerDoc.id
        })
    

    这与您在第一个文档中首次使用 CustomerDoc.id 的方式没有什么不同。如果您在创建文档时没有此参考,那么您将无法建立关联。

    【讨论】:

    • 那么我如何使用引用数据类型来更轻松地定位Customer_Id,因为上面的答案是正确的,将其存储为字符串
    • 使用引用类型不一定更容易。您仍然需要查询其他文档。但是如果你想要一个参考,你可以直接传递CustomerDoc
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-09
    • 1970-01-01
    • 2020-12-24
    • 2019-11-20
    相关资源
    最近更新 更多