
我想更改用户的名称。
我发现我可以通过这样做来更改名称:
changeValue(valueMap,username){
FirebaseFirestore.instance.collection('users')
.doc('WAdq4CwPD471gx92ncBW')
.update(valueMap);
}Map valueMap = {
'name': _name,
};
dataBase.changeValue(valueMap);但为此,我需要获得随机生成的密钥/ID,因此我需要使用该用户的用户名更改名称,我如何做到这一点?
发布于 2021-09-12 12:01:27
有几种方法可以做到这一点。首先,如果您有用户的用户名,可以使用下面的函数获取文档ID。
QuerySnapshot> collection = await FirebaseFirestore
.instance
.collection('users')
.where('username', isEqualTo: username)
.get();
if (collection.docs.isNotEmpty) {
String docId = collection.docs.first.id;
// pass this docId to changeValue(valueMap, username, docId);
} else {
print('username does not exist');
}然后像这样用docId调用changeFunction。
changeValue(valueMap, username, docId){
FirebaseFirestore.instance.collection('users')
.doc(docId)
.update(valueMap);
}https://stackoverflow.com/questions/69150968
复制相似问题