2017-09-06 160 views
0

我試圖使用angularjs將數據推入Firebase數據庫。我使用系統作爲鑰匙,然後使用設備作爲孩子,但是當我推動數據時,它會生成一個鑰匙,並在其下面存儲設備。我想它來存儲像這樣我的數據:當在Firebase數據庫中推送數據時,子類自動生成id

System -> Equipment1 
     -> Equipment2 
     -> Equipment3 

System2 -> Equipment1 
     -> Equipment2 
     -> Equipment3 

這裏是我的代碼:

/*global angular*/ 
var app = angular.module('input', ['ngRoute', 'firebase']); 

app.config(['$routeProvider', function ($routeProvider) { 
    'use strict'; 
    $routeProvider.when('/input', { 
     templateUrl: 'input/input.html', 
     controller: 'inputCtrl' 
    }); 
}]); 

app.controller('inputCtrl', ['$scope', '$firebaseObject', function ($scope, $firebaseObject) { 
    'use strict'; 
    $scope.system; 
    $scope.message; 
    $scope.writeUserData = function (equipment) { 
     firebase.database().ref('data/' + $scope.system + '/equipments').push({ 
      equipment: equipment 
    }); 
     $scope.message = "Success"; 
} 
}]); 

這是它看起來像我推後的數據。

Database

回答

1

如果你想控制的子節點的名字,不叫push()

firebase.database().ref('data/' + $scope.system + '/equipments').set({ 
     equipment: equipment 
}); 

但你會想可能給一個名稱爲子節點,例如

firebase.database().ref('data/' + $scope.system + '/equipments').child("Equipment1").set({ 
     equipment: equipment 
}); 

或者

firebase.database().ref('data/' + $scope.system + '/equipments') 
    .child(equipment).set(equipment); 
相關問題