簡體   English   中英

如何使用 Flutter 在 Firestore 的 uid 文檔中創建集合?

[英]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.

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