8/25/2020 10:21:58 PM

Get a single document from a Firebase Cloud Firestore collection and convert the results to a concrete model.

import 'package:flutter/material.dart'; import 'package:cloud_firestore/cloud_firestore.dart'; class FirebaseFirestoreGetDocument extends StatelessWidget { final firestoreInstance = FirebaseFirestore.instance; Future getDocument() async { print("getDocument"); //assume there is a collection called "users" var uid = "123123123123123123"; //the unique user id/document id firestoreInstance.collection("users").doc(uid).get().then((querySnapshot) { print("result"); print(querySnapshot.data()); //convert the result to a model var userModel = new UserModel(); userModel.fromMap(uid, querySnapshot.data()); print(userModel.getId()); print(userModel.name); }); } @override Widget build(BuildContext context) { getDocument(); return new MaterialApp( home: Container( child: Text("running tests"), )); } } class UserModel { String _id = ""; String name; UserModel({this.name}); void fromMap(String id, Map map) { this._id = id; this.name = map["name"]; } String getId() { return this._id; } }