Абсолютно новый для firebase, я хочу установить номер телефона в качестве первичного ключа (uid) и адрес электронной почты в качестве вторичного ключа.Как я могу предотвратить дублирование этих двух, если они существуют в моей базе данных Firebase?У меня нет аутентификации в моем приложении.Я делаю это для контактной формы, чтобы предотвратить дублирование
Ниже мой код JS
// Submit form
function submitForm(e){
e.preventDefault();
// Get values
var name = getInputVal('name');
var company = getInputVal('company');
var email = getInputVal('email');
var phone = getInputVal('phone');
var message = getInputVal('message');
// Save message
saveMessage(name, company, email, phone, message);
}
// Function to get get form values
function getInputVal(id){
return document.getElementById(id).value;
}
// Save message to firebase
function saveMessage(name, company, email, phone, message){
var newMessageRef = messagesRef.push();
newMessageRef.set({
name: name,
company:company,
email:email,
phone:phone,
message:message
});
}
А ниже приведено правило, которое я установил в базе данных
{
"rules": {
".read": "false",
".write": true,
"phone": { // assuming this as primary key
".validate": "newData.isString() &&
newData.val().length == 10 &&
!root.child('phone').child(newData.val()).exists()"
}
}
}