Child Class 在firebase数据库中推送数据时自动生成id

Child Class auto generates id when pushing data in firebase database

我正在尝试使用 angularjs 将数据推送到 firebase 数据库。我将系统用作密钥,然后将设备用作 child,但是当我推送数据时,它会生成一个密钥并在其下存储设备。我希望它像这样存储我的数据:

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";
}
}]);

这是我推送数据后的样子

如果要控制子节点的名称,请不要调用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);