Ios Swift Firestore更新字段值
在firestore中,我们添加了多个字段,但没有指定documentID auto ID。我需要更新特定字段值,例如: 我在我的收藏中有个人详细信息列表,包括姓名、年龄和性别 我需要更新name=kavin的特定字段值 这是我的密码 self.DBRef.collectionusers.whereFieldname,isEqualTo:kavinIos Swift Firestore更新字段值,ios,firebase,google-cloud-firestore,swift4,Ios,Firebase,Google Cloud Firestore,Swift4,在firestore中,我们添加了多个字段,但没有指定documentID auto ID。我需要更新特定字段值,例如: 我在我的收藏中有个人详细信息列表,包括姓名、年龄和性别 我需要更新name=kavin的特定字段值 这是我的密码 self.DBRef.collectionusers.whereFieldname,isEqualTo:kavin 如何更新此字段值您的问题不清楚您是否希望名称是唯一的,或者是否有许多名为kavin的用户 但是假设用户名是唯一的,您可以这样解决它 self.DBR
如何更新此字段值您的问题不清楚您是否希望名称是唯一的,或者是否有许多名为kavin的用户 但是假设用户名是唯一的,您可以这样解决它
self.DBRef.collection("users")
.whereField("name", isEqualTo: "kavin")
.getDocuments() { (querySnapshot, err) in
if let err = err {
// Some error occured
} else if querySnapshot!.documents.count != 1 {
// Perhaps this is an error for you?
} else {
let document = querySnapshot!.documents.first
document.reference.updateData([
"age": 99
])
}
}
您必须使其返回一个包含一个文档数组的。结果查询在文档上没有任何唯一字段的概念。因此,当名称应该是唯一的时,如果得到多个结果,则必须处理其含义的逻辑
一旦检索到查询结果,您就可以直接访问具有所需属性的文档引用。您的问题不清楚您是否希望该名称是唯一的,或者是否有许多名为kavin的用户 但是假设用户名是唯一的,您可以这样解决它
self.DBRef.collection("users")
.whereField("name", isEqualTo: "kavin")
.getDocuments() { (querySnapshot, err) in
if let err = err {
// Some error occured
} else if querySnapshot!.documents.count != 1 {
// Perhaps this is an error for you?
} else {
let document = querySnapshot!.documents.first
document.reference.updateData([
"age": 99
])
}
}
您必须使其返回一个包含一个文档数组的。结果查询在文档上没有任何唯一字段的概念。因此,当名称应该是唯一的时,如果得到多个结果,则必须处理其含义的逻辑
检索到查询结果后,您可以直接访问具有所需属性的文档引用