以下のようなデータ構造を仮定すると、新しい車の追加を禁止するルールが必要です。たとえば、ユーザーは「toyota」を追加できません。ですから、.updateが既存のmakeと一致するように.validateする必要があります。データ検証用のFirebaseルール
私は$ car with "validate": "newData.val()。contains($ cars)"と運がない、あらゆる種類の方法を試しました。どんな助けもありがとうございます。
私のコードは次のとおりです。
function setModel(model,make,key){
if (model && make && key){
var carsRef = ref.child('cars');
var makeRef = carsRef.child(make);
var modelRef = makeRef.child(model);
var obj = {};
obj[key] = true;
modelRef.update(obj, onComplete);
}
}
firebaseは、次のようになります。新しい車のブランドを追加禁止するには
{
"cars" : {
"chevrolet" : {
"silverado" : {
"id192874623" : true,
"id786766663" : true
}
},
"ford" : {
"taurus" : {
"id736273627" : true
}
},
"honda" : {
"accord" : {
"id635263535" : true
}
}
}}
既にセキュリティルールを書き込もうとしている場合は、質問に追加してください。それは最初から始めるのではなく、あなたが間違っているかもしれないものを見ることができます。 –