在 Firestore 中,當您洗掉檔案時,您可以指定 {exists: true } 之類的條件,以避免在檔案不存在時將其洗掉。
在并發場景中,如果父檔案存在,我們可能只想將檔案添加到子集合中。
例如,想象以下 NoSql 結構:
-comment (doc)
/likes (subcollection created when the first like is given)
-like1
-like2
...
是否可以做類似的事情
likeRef.create(data, { parent_exists: true });
??
是用事務處理這種情況的唯一方法(閱讀父檔案,并在 .exists() 為假時拋出錯誤)?
我害怕這種情況,因為如果在洗掉容器檔案的同時創建子集合,資料庫中可能會有孤立的“物體”,如果沒有準備好這些,甚至可能會破壞 UI極端情況。
uj5u.com熱心網友回復:
這在 Firestore 中作為單個操作是不可能的。
唯一的方法是啟動一個事務,然后是事務中get()的父檔案,如果父檔案存在,則將檔案添加到子集合中。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/407188.html
標籤:
