Разрешить обновление определенного вложенного значения в Firestore - PullRequest
0 голосов
/ 02 июля 2018

Мне нужно дать анонимным пользователям возможность обновлять определенное значение внутри вложенной архитектуры, не давая разрешения на остальную часть документа.

events - коллекция верхнего уровня, и я обновляю свой документ примерно так

update(`events/${event.id}`, {
  [`boardgames.${boardgameId}.votes.${uid}`]: true,
})

Я пробовал это решение

allow update: if ((request.writeFields.size() == 1) && ('boardgames' in request.writeFields));

как упомянуто здесь , но это терпит неудачу (обе половины тоже терпят неудачу независимо).

Чего мне не хватает? Разве я не обновляю только одно поле при входе внутрь вложенного объекта?

Было бы очень полезно иметь возможность console.log для request и request.writeFields.

Обратите внимание, что в идеале я хотел бы разрешить изменение только самого глубокого свойства, текущего пользователя uid внутри votes.

...