有没有办法在Update功能中将空Map添加到firestore中?
这是我用于更新数据库中某些值的代码。我希望
users
值是一个空地图。它不应该包含任何类型的空子值,就像我在代码中那样。
addEventDetails() async {
if (_eventNameTextEditingController.text.isNotEmpty &&
_eventDescTextEditingController.text.isNotEmpty &&
_eventLocationTextEditingController.text.isNotEmpty &&
_eventTicketPriceTextEditingController.text.isNotEmpty &&
formattedDate != null) {
documentReference.update({
"createdBy": orgUid,
"eventName": _eventNameTextEditingController.text,
"eventDesc": _eventDescTextEditingController.text,
"eventLoc": _eventLocationTextEditingController.text,
"ticketPrice": _eventTicketPriceTextEditingController.text,
"eventDate": formattedDate,
"addedDate": addedDate,
"eventId": documentReference.id,
"users.emptyValue": {},
});
await displayDialog("Event added successfully!");
clearValues();
// Navigator.push(
// context, MaterialPageRoute(builder: (context) => OrgHomePage()));
} else {
displayDialog("Please fill all the fields");
}
}
没有值的字段不会存储在 Firestore 中,因此不会显示在 Firebase 控制台中。
常见的做法是在这些字段中存储默认值,例如空字符串。空字符串是一个值,因此当您将其值设置为空字符串时,该字段将被存储,因此它将显示在控制台中。
documentReference.update({
"users": {},
});