Man*_*nal 2 document firebase google-cloud-platform flutter google-cloud-firestore
我开发了一个应用程序,可以提醒老年人他们的用药时间,并且知道我想让他们能够更新他们的药物并存储他们所做的任何更改。这是我更新药物名称的代码:
onPreesed: () async {
final updatedMedcName1 = await FirebaseFirestore.instance
.collection('medicine')
.doc(**????????**)
.update({'medicationName': updatedMedcName});
// Navigator.of(context).pop();
},
Run Code Online (Sandbox Code Playgroud)
对于字段,medId
我使用代码获取了 id:
FirebaseFirestore.instance.collection('medicine').doc().id,
Run Code Online (Sandbox Code Playgroud)
但它与红色下划线的 id 不一样
为了在给定集合中查找特定文档,您有两种解决方案:
userId或medId任何其他字段或多个字段的组合。根据您问题中共享的信息,我们无法定义您应该运行哪个查询来查找所需的文档。如果您在问题中添加更多详细信息,可能会得到更准确的答案。
根据您的评论更新
首先需要通过查询获取文档,然后获取其DocumentReference,然后更新它,如下所示:
QuerySnapshot querySnap = await FirebaseFirestore.instance.collection('medicine').where('userId', isEqualTo: user.uid).get();
QueryDocumentSnapshot doc = querySnap.docs[0]; // Assumption: the query returns only one document, THE doc you are looking for.
DocumentReference docRef = doc.reference;
await docRef.update(...);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
5773 次 |
| 最近记录: |