Json angularfire中的自定义数据树名称
我正在使用$routeProvider,它根据firebase阵列中的条目id生成页面Json angularfire中的自定义数据树名称,json,angularjs,database,firebase,Json,Angularjs,Database,Firebase,我正在使用$routeProvider,它根据firebase阵列中的条目id生成页面 .state('app.Ketel', { url: '/ketels/:id', views: { 'menuContent': { templateUrl: 'templates/ketels/template.html', controller: 'ketelsCtrl'
.state('app.Ketel', {
url: '/ketels/:id',
views: {
'menuContent': {
templateUrl: 'templates/ketels/template.html',
controller: 'ketelsCtrl'
}
}
})
ketelapp.controller('ketelsCtrl', function ($scope, $routeParams, $stateParams, $state, firebaseService, $firebaseArray, $firebase){
$scope.ketels = firebaseService.all;
$scope.ketel = firebaseService.get($stateParams.id - 1);
})
我的firebase数据树
ketels ->
1 --> name : blablabla;
brand : bla bla bla;
2 --> name : blablabla;
brand : bla bla bla;
现在我正在尝试制作一个脚本,以id格式将项目添加到数组中
ketelapp.controller('pushCtrl', function ($scope, $firebaseArray, $firebase, $firebaseObject){
var id = 3;
var ref = new Firebase("https://url.firebaseio.com" + "/ketels/" + id);
// create a synchronized array
$scope.ketels = $firebaseArray(ref);
var ketels = $scope.ketels;
$scope.addMessage = function(name, brand, desc) {
$scope.ketels.$add({
name: name,
brand: brand,
desc: desc
});
};
})
现在,我的数据添加了正确的id,但在数据树的深处,它仍然使用了一个随机数据键,这会弄乱我的代码
ketels ->
1 --> random key --> name : blablabla;
brand : bla bla bla;
2 --> random key --> name : blablabla;
brand : bla bla bla;
有没有办法禁用firebase以使用其自定义生成的数据密钥
--编辑--
或者用另一种方法修复我的路由当然
您正在调用$firebaseArray.$add()
:
这意味着您要求Firebase生成一个所谓的推送id
如果你不想这样,你可以:
$scope.ketels.$ref().child('your-unique-id').set({...
请注意,这有很好的理由。忽略这些,后果自负。我可以用它为每个条目设置一个递增id吗?
$scope.ketels.$ref().child('your-unique-id').set({...