Итак, у меня есть эта функция для сохранения пользователя в Firestore после того, как он успешно зарегистрировался.
//User class
id: String
email: String?
displayName: String?
photoUrl: String?
//updateOrInsertUser method
collectionReference.document(user.id)
.set(
user,
SetOptions.mergeFields(
FIELD_photoUrl,
FIELD_email,
FIELD_displayName
)
)
Но когда я вызываю updateOrInsertUser(user)
, в Firestore хранятся только поля, которые находятся в SetOptions
, поэтому id
не сохраняется.
Есть ли простой способ переопределить старые значения, определенные в SetOptions
, если документ уже существует, и если в нем нет документов для хранения всего?
Я не хочу получать старый документ перед обновлением: (
Нет, я не хочу добавлять id
в SetOptions
(представьте себе другие случаи использования, когда вы не хотите переопределять поле, которое уже существует в базе данных)