[英]How to create a collection inside a document in Firestore with Flutter?
[英]How to create a collection inside a uid document in Firestore using Flutter?
如何使用 Flutter 基於動態 uid 在 Firestore 中創建子集合?
架構應該是這樣的:用戶(集合)--> UID(文檔——每個用戶唯一)--> 保險庫(集合)--> 憑證(文檔)
我目前正在使用下面的實現,顯然在調用時它只是創建了我需要的架構,除了使用字符串“uid”代替用戶的動態 uid 作為保管庫集合所在的文檔。如何更改document('uid') 元素是當前用戶的實際 uid 文檔,而不僅僅是字符串“uid”?
import 'package:mindpass/models/user.dart';
import 'package:cloud_firestore/cloud_firestore.dart';
class DatabaseService {
final String uid;
DatabaseService({ this.uid });
String credential;
// collection reference
final CollectionReference vaultCollection = Firestore.instance.collection('users').document('uid').collection('vault');
Future<void> updateVaultData(String credUN, String timeStamp) async {
return await vaultCollection.document(credential).setData({
'credUN': '"aribtraryUN"',
'timeStamp': Timestamp.now()
});
}
如果用戶使用 Firebase 身份驗證登錄,您可以通過以下方式獲取他們的 UID:
var user = await FirebaseAuth.instance.currentUser();
var uid = user.uid;
然后通過以下方式獲取他們的保險庫收藏:
final CollectionReference vaultCollection = Firestore.instance.collection('users').document(uid).collection('vault');
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.