Я пытаюсь заблокировать чтение в пожарном хранилище для любых записей, которые не находятся в радиусе 1000 м от текущей позиции пользователя, используя rules.latlng.distance
Я пробовал несколько случаев:
- Правило
latlng.value(resource.data.location.latitude, resource.data.location.longitude).distance(get(/databases/$(database)/documents/users/$(request.auth.uid)).data.location) <= 1000;
Ошибка
Широта свойства не определена в объект.
Правило
latlng.value(resource.data.location.getLatitude(), resource.data.location.getLongitude()).distance(get(/databases/$(database)/documents/users/$(request.auth.uid)).data.location) <= 1000;
Ошибка
Функция не найдена Ошибка: Имя: [getLatitude].
Правило
latlng.value(resource.data.location.latitude(), resource.data.location.longitude()).distance(get(/databases/$(database)/documents/users/$(request.auth.uid)).data.location) <= 1000;
Ошибка
Ошибка функции не найдена: Имя: [широта].
Все они являются результатом в ошибке. Поле местоположения имеет тип GeoPoint.