角火力点。数据未正确插入

时间:2016-04-26 10:26:51

标签: angularjs controller firebase firebase-realtime-database

我想将我的数据插入firebase中,如下所示:

cities:{
    Tokyo:{
        name: "Tokyo, JP"
    }
    London:{
        name: "London, UK"
    }

    and so on...

我从在线GUI手动插入了一些数据:cities

但不幸的是它插入了:minsk

我的代码

Firebase工厂:

export default function CitiesFactory($firebaseArray, Firebase) {
    'ngInject';
    var ref = new Firebase("https://name.firebaseio.com/");
    return $firebaseArray(ref.child('cities'));
}

控制器(添加功能):

    $scope.addoras = function(city) {
        CitiesFactory.$add({
            city: {
                name: city
            }
        }).then(function(CitiesFactory) {
            var id = CitiesFactory.key();
            console.log('Added Contact ' + id);
            $scope.addorasmodel = '';

        });
    };

有人可以帮助我吗?

1 个答案:

答案 0 :(得分:2)

当您使用$ add()时,它会生成一个唯一的推送ID,如documentation中所述。

如果你想避免使用这些唯一身份证,你可以使用set()或update()(Documentation

var ref = new Firebase("https://name.firebaseio.com/");
ref.set({
    city: {
        name: city
    }
});

var ref = new Firebase("https://name.firebaseio.com/");
ref.update({
    city: {
        name: city
    }
});