如何将另一个对象添加到集合?

时间:2020-06-15 21:06:13

标签: javascript google-cloud-firestore

我正在尝试创建一个将“预订”添加到firebase文档的功能。在下图中,可以看到预订/日期中已经有一个对象。我想再添加一个。

这将使它成为对象数组(?)

collection firebase

到目前为止,我的尝试只是覆盖其中的内容或创建一个带有预订名称的子集合

const bookingObj = {
      ...cartItems[1],
      userId: userObject.uid,
      carro: 'PASSA_CARRO',
      cor: 'PASSAR_COR',
    }

const businessRef = await approvedBusinessService.doc(businessId)
const bookingDateRef = await businessRef.collection('bookings').doc(currentDate) //currentDate: "15/06/2020"
    try {
      bookingDateRef.set(bookingObj) //will create a subcollection
    } catch (error) {
      console.error('error merging Business info')
    }

以前,我有{ merge: true },但也表现得并不理想。

1 个答案:

答案 0 :(得分:1)

“ bookings”不是集合,而是文档字段。因此,您无法使用public function getSumPriceAttribute() { $sumPrice = 0; $prices = $this->where('Duration', '<=', $this->Duration)->get(); // I removed domain filter query here. foreach($prices as $price) { $sumPrice += $price->totalPrice; // change $subPrice to $sumPrice } return $sumPrice; } 来引用它。如果您有一个子集合,则它在控制台中的显示会非常不同。 (而且非常值得考虑使其成为子集合而不是字段),尤其是如果您可以在其下添加无边界的对象列表。)

如果要在预订下添加新的嵌套字段,则必须更新文档并调出嵌套字段的名称以使用点符号进行更新。

collection()