Я пишу систему чата с использованием Firestore. Для каждой учетной записи пользователя есть документ, который содержит открытые чаты пользователя в поле карты с именем channels
.
Каждый раз, когда пользователь хочет с кем-то поговорить, идентификатор документа новой комнаты добавляется к карте обоих пользователей channels
. Чтобы защитить эту карту и предотвратить вмешательство или удаление карты целиком, я бы хотел установить правило, согласно которому можно добавлять только новые значения, но не удалять ни одно. Возможно ли это?
Это моя текущая схема:
- пользователей (коллекция)
- userID (документ)
- каналов (поле, карта)
- channel1ID
- channel2ID
- ...
- каналов (сборник)