У меня есть документ с именем «список», который содержит поле с именем «список», который представляет собой карту, где значения являются новой картой, которая должна содержать только ключи «цвет» и «описание». Я пытаюсь написать правила, которые гарантируют, что ключи являются только «цветом» и «описанием», но я не могу найти способ ограничить имена ключей на карте внутри карты.
(причина в том, что карта карт внутри отдельного документа состоит в том, что у меня есть правило безопасности, где поле типа массив может содержать только элементы, указанные в "list.list.keys ()")
Я пытался
request.resource.data.list.values()[request.resource.data.list.values().size()-1].keys().hasOnly(["color", "description"])
&& request.resource.data.list.values()[request.resource.data.list.values().size()-1].keys().hasAll(["color", "description"]);
, но это не работает, так как индекс нового значения является случайным, как его карта.