firebase 실시간 데이터베이스에 사용자 데이터베이스가 있습니다.하위 레코드에 대한 Firebase .validate 규칙
내 구조는 다음과 같습니다
사용자 -> UID -> user_infos (I라는 속성했습니다이 수준에서 'CPF')
그래서 내가 CPF에 대한 .validate 규칙을 만들었을 :{
"rules": {
"users": {
"$user_id": {
"$cpf": {
".validate": "!data.exists()"
}
}
}
}
}
문제
내가 사용자를 저장하려고 할 때, 나는PERMISSION_DENIED
오류가 발생합니다.
나는 3.4.1
, 나는 사용자 저장에 사용하는 방법을 중포 기지 자바 스크립트 lib 디렉토리를 사용하고 있습니다 것은 :
firebase.database().ref('users/' + uid).set(userDb);
내 의도는 CPF 속성이 데이터베이스에 고유해야한다는 것입니다.
감사합니다.
규칙이 잘 보입니다. 이 실패를 빨리 볼 수있는 유일한 방법은'userDb.id'가 빈 문자열 일 때입니다. –
안녕하세요 @ FrankvanPuffelen 나는 내 질문을 업데이트했다. 이전 질문은 내 필요성을 충족시키지 못했다. Thx –
'.validate' 대신'.write'를 시도하고''.write ":"! data.exists() ||! newData.exists() "'"를 사용하면 어떻게 될까요? –