使用 Angular / Angularfire 更新 Firebase 中的当前项目数据库

update Current Item Database in Firebase with Angular / Angularfire

我使用 firebase 作为数据库,Angular 创建后端。

当我想更新我的数据库的一个特定项目时遇到了一些问题。

我的数据库是这样的:

 --mydomain 
----posts 
--------POST LIST1 (crazy number and letter are display)
------------author 
------------imageDetails THIS IS WAHT SHOULD BE UPDATED)
------------etc 
--------POST LIST2 (crazy number and letter are display)
------------author 
------------imageDetails 
------------etc 
...
----users 
--------name 
--------email 
--------id

我希望能够更新当前项目(帖子)的 table 图片详细信息

但目前它在我尝试更新时这样做:

--mydomain 
----posts 
--------POST LIST1 (crazy number and letter are display)
------------author 
------------imageDetails 
------------etc 
--------POST LIST2 (crazy number and letter are display)
------------author 
------------imageDetails 
------------etc 
--------imageDetails(THIS IS WHERE ITS WRONG)
...
----users 
--------name 
--------email 
--------id

我的原始代码是:

 var firebaseRef = firebase.database().ref().child('posts/');

我也尝试了以下方法:

 var firebaseRef = firebase.database().ref('posts/' + posts.key +'/test');

没有成功,我有 'posts is not defined'

完整代码如下:

    app.controller('myController', ['$scope','$firebaseStorage',function($scope,     $firebaseStorage) {
    var ref = firebase.database().ref().child("posts");
// Create a Firebase Storage reference
  var storage = firebase.storage();
   var firebaseRef = firebase.database().ref('posts/' + posts.key +'/test').push().key;


  var storageRef = storage.ref();
  var filesRef = storageRef.child('files');

  $scope.uploadFile = function(file) {
  console.log("Let's upload a file!");
  console.log($scope.file);
  var storageRef = firebase.storage().ref().child(file.name).put(file);
  storageRef.on('state_changed', function(snapshot) {
            var progress = (snapshot.bytesTransferred / snapshot.totalBytes) * 100;

        }, function() {
            //handle error
        }, function() {
       //url of storage file 
            var downloadURL = storageRef .snapshot.downloadURL;
          firebaseRef.update({'url':downloadURL})
        // firebaseRef.update().ref().child('posts').child({'oui':downloadURL});
          // const dbref = firebase.database().ref().child('posts').child(uid);

     console.log(downloadURL);

        });
    };

 }]);

我怎样才能做到这一点?我一直在尝试使用推送,但它没有任何改变。

感谢您的帮助。

app.controller('myController', ['$scope','$firebaseStorage',function($scope,     $firebaseStorage) {
    var ref = firebase.database.ref("posts");
// Create a Firebase Storage reference
  var storage = firebase.storage();



  var storageRef = storage.ref();
  var filesRef = storageRef.child('files');

  $scope.uploadFile = function(file,group) {
  console.log("Let's upload a file!");
  console.log($scope.file);
  var storageRef = firebase.storage().ref().child(file.name).put(file);
  storageRef.on('state_changed', function(snapshot) {
            var progress = (snapshot.bytesTransferred / snapshot.totalBytes) * 100;

        }, function() {
            //handle error
        }, function() {
        var firebaseRef = firebase.database().ref().child('posts');
        var downloadURL = storageRef.snapshot.downloadURL;
            group.imageDetails = downloadURL;
            firebaseRef.child(group.title).update(group);
            console.log(downloadURL);


        });
    };

 }]);