![](/img/trans.png)
[英]Invalid document reference. Document references must have an even number of segments, but Users has 1'
[英]Invalid document reference. Document references must have an even number of segments, but likes has 1
我的查询有什么问题?
let uid = Auth.auth().currentUser?.uid
let itemId = selectedItem.objectID
var isOn = false
func like(){
if isOn == true {
likeRef.delete(){err in
if let err = err{
print("Error")
}else{
self.likeImageView.image = UIImage(named: "detail_like.png")
self.isOn = false
print("delete Success")
}
}
}else if isOn == false {
let like = Like(uid: uid!, itemId: itemId!, status: true)
db.collection("likes").addDocument(data: like.dictionary()){ err in
if let err = err {
print("Error adding document: \(err)")
} else {
self.isOn = true
self.likeImageView.image = UIImage(named: "like_after.png")
}
}
print(isOn)
}
}
它有一个addDocument
值。 值不为零。
我第一次遇到这个错误。 是什么原因?
出现错误,因为let itemId = selectedItem.objectID
没有值。
因此,当我直接在 if 中设置它而不声明常量时,错误消失了。
if isOn == true {
db.collection("likes").document(likeObjectID).delete(){err in
if let err = err{
print("Error")
}else{
self.likeImageView.image = UIImage(named: "detail_like.png")
self.isOn = false
print("delete Success")
}
}
}else if isOn == false {
let like = Like(uid: uid!, itemId: itemId!, status: true)
db.collection("likes").addDocument(data: like.dictionary()){ err in
if let err = err {
print("Error adding document: \(err)")
} else {
self.isOn = true
self.likeImageView.image = UIImage(named: "like_after.png")
}
}
print(isOn)
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.