簡體   English   中英

Cloud Firestore:編寫文檔參考自 Flutter Plugin/SDK

[英]Cloud Firestore: Write document reference from Flutter Plugin/SDK

我正在尋找從 Flutter 應用程序到 Firestore 的文檔參考。

這是我從 Firestore 控制台創建引用時的樣子: 在此處輸入圖像描述

如果我只是將引用寫在 Flutter 的字符串中

  Map<String, String> usersReference = {
    uid: 'users/' + uid
  };
  Map<String, Object> userData = {
    'usersReference': usersReference
  };
  Firestore.instance.collection('chats').add(userData).then((doc) {
    doc.setData(userData);
  });

我明白了:

在此處輸入圖像描述

有沒有一種方法可以使用 Flutter cloud_firestore 插件或任何其他 SDK 來編寫參考(例如來自控制台)?

您不應聲明引用的對象將其更改為DocumentReference

Map<String, DocumentReference> userData = {
  'usersReference': usersReference
};
Firestore.instance.collection('chats').add(userData).then((doc) {
  doc.setData(userData);
});

是的,您可以在文檔中添加文檔引用,但在開發環境中不是首選。 您只能在 Firestore 控制台上使用它。

#AskFirebase 的這一可能會幫助您正確理解它。

您要做的第一件事是創建對文檔的實際引用,例如

DocumentReference userRef = FirebaseFirestore.instance.collection("users").doc(FirebaseAuth.instance.currentUser?.uid);

這引用了“用戶”集合,然后選擇具有用戶 uid 的文檔。

接下來,您所要做的就是設置數據。

var farmData = {
    'name': farmName,
    'address': farmAddress,
    'city': farmCity,
    'state': farmState,
    'zipcode': farmZip,
    'phone': farmPhone,
    'alternatePhone': farmAlternatePhone,
    'created': DateTime.now(),
    'users': [userRef]
  };

await FirebaseFirestore.instance.collection('farms').doc(uuid).set(farmData);

在我的例子中,我想要一個用戶參考列表。 現在該表中只有 1 個項目,但如果我稍后決定,我可以用更多用戶更新它。

暫無
暫無

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

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