Я предполагаю, что вы пытаетесь проверить, содержит ли документ uid
пользователя в качестве значения поля userRef
и существует ли пользователь с соответствующим uid
в вашей коллекции пользователей перед сохранением документа.
В этом случае вам необходимо выполнить 2 проверки.
1) Проверить, существует ли пользователь в users
collection
2) Проверить, содержит ли документ пользователя uid
в поле userRef
документа
//Get the user using uid
function getUser() {
return (get(/databases/$(database)/documents/users/$(request.auth.uid)).data);
}
//Check if user exists
function isValidUser(user) {
return (user != null);
}
// Check access for your collection
match /YourCollection/{id} {
allow create: if (isValidUser(getUser()) && request.resource.data.userRef == getUser().uid);
}
Надеюсь, что это решит вашу проблему.