firebase - 如何根据登录的用户向 Firestore 添加一些数据,以及如何创建用户的个人资料?
问题描述
我正在使用颤振开发餐厅应用程序,我想使用 firestore 作为我的数据库,并且我已经在Andrea Bizzotto 的YouTube 身份验证教程的帮助下通过 firebase 进行了身份验证,但我无法理解任何教程或无法整合到登录/注册页面以在云 Firestore 中创建用户信息,有人可以给我一个方法来做到这一点,只需给出一个基本的介绍或方向来找到完成它的方法。提前致谢。
解决方案
在您使用 firebase auth 注册用户后,如果成功,您应该运行此方法来更新他的数据。
Future<dynamic> updateUserData(FirebaseUser user, String photoUrl, String displayName) async {
final Firestore _db = Firestore.instance;
DocumentSnapshot snapshot =
await _db.collection('users').document(user.uid).get();
DocumentReference ref = _db.collection('users').document(user.uid);
if (snapshot.exists) {
return ref;
} else {
return Firestore.instance.runTransaction((Transaction tx) async {
return tx.set(
ref,
{
'uid': user.uid,
'email': user.email,
'name': displayName,
'photo': photoUrl,
'lastSeen': DateTime.now()
},
);
}).then((val) => val.length);
}
}
推荐阅读
- node.js - 如何在 nodejs 服务器中处理批量 api 请求?
- c++ - 如何为函数的参数使用无限数量的结构?
- c# - 在 Xamarin Forms 中使用 SkiaSharp 绘制现有图像
- c# - 如何在插件中以编程方式访问 Outlook 中的旧存档邮件
- arrays - 如何在 CPLEX 中输入 3D 数组数据?
- javascript - 如何声明一个 express/js req.param,它是作用域/通过路由处理程序上的每个方法的?
- javascript - 在 Android Chrome 中的 Canvas 上绘制时如何防止拉动刷新
- python - 在 python 中加载机器学习模型时出错
- python - 为什么我不能在 windows 10 (python 3.9.0 pip 21.0.1) 上安装 tensorflow?
- python - 在 python 中访问相应文件夹时出错