2016-03-21 181 views
2

我有我试图与删除测验记录下面的代码:火力地堡删除查询结果

 

    var authref = new Firebase("https://.firebaseio.com"); 
    var authData = authref.getAuth(); 

    var ref = new Firebase("https://.firebaseio.com/quiz"); 
    ref.orderByChild("uid").equalTo(authData.uid).on("value", function(snapshot) { 
    snapshot.forEach(function(data) { 
     var record = data.val(); 
     if(record["name"] == name) 
     { 
     ref.remove(record.ref()); 
     } 
    }); 
    }); 

 

我想删除属于认证用户测验和具有传递相同的名称包装函数。

我知道我需要传递测验的参考URL,但我不确定如何获取ID,因为它是由Firebase自动生成的。

下面是我的数据布局的一个例子:

 

quiz 
-KDATEVU4fU5OF55fCbP 
-KDOIReUla7Fj1K62x7S 
-KDOJ-oI0JYmCdWrqrx_ 
-KDPr7deQ5BHQcTwQ_cG 
    name: "question" 
    passcode: "9876" 
    questions 
     -KDPr82WcFw-jfuPz3T1 
     0 
      ans: "s" 
      attempts: 0 
      correct: 0 
      qtext: "a" 
      wrong1: "d" 
      wrong2: "f" 
      wrong3: "g" 
      uid: "1f72bd29-967c-446d-a6b9-37ec9de540e0" 
 

我会非常感激,如果有人可以帮助我了这一点。

回答

4

我刚刚弄明白了。我应该有RTFM。

 

var authref = new Firebase("https://.firebaseio.com"); 
    var authData = authref.getAuth(); 

    var ref = new Firebase("https://.firebaseio.com/quiz"); 
    ref.orderByChild("uid").equalTo(authData.uid).on("value", function(snapshot) { 

    snapshot.forEach(function(data) { 

     var record = data.val(); 

     if(record["name"] == name) 
     { 
     ref.child(data.key()).remove(); 
     } 
    }); 
    }); 
 
+5

很高兴听到你自己想通了。如果您也可以链接到您应该拥有RTd的FM,那就太好了。 :-) –

+0

什么是“FM”和“RT”?另外,我想你也可以使用'data.ref.remove()' –

+0

代表“Read The F ****** Manual”:) – James