Ich habe eine Frage zu eckigen Upload-Dateien, wie kann ich Dateien vor dem Upload umbenennen? Ich muss diesen Dateien ähnliche Namen geben. Ich höre über .rename Methode, aber wenn ich versuche, es zu verwenden, funktioniert es nicht. Wie kann ich das tun?Wie wird die Datei umbenannt, wenn sie mit Angular auf den Server hochgeladen wird?
Dies ist meine Richtlinie
.directive('fileModel', ['$parse', function($parse) {
return {
restrict: 'A',
link: function(scope, element, attrs) {
element.bind('change', function() {
console.log('from directive', scope.$apply())
$parse(attrs.fileModel)
.assign(scope, element[0].files)
scope.$apply();
});
}
};
}])
Das ist mein Controller-
$scope.uploadFile = function(files) {
var fd = new FormData();
angular.forEach(this.files, function(file) {
fd.append('avatar', file);
});
$http.post('http://hannation.me/api/userplus/avatar_upload/?key=57f211a0354d7&cookie=' + $localStorage.currentUser.cookie, fd, {
transformRequest: angular.identity,
headers: {
'Content-Type': undefined
}
}).success(function(d) {
console.log(d);
AuthService.getUserGravatar().then(function(data) {
console.log(data);
$scope.avatar = data;
})
})
}
Sorry, ich brauche keine Zufallszahl, ich muss Originaldatei vor dem Hochladen tatsächlich umbenennen. –
Aber es wird ein Problem machen, wenn Sie die gleiche Datei mehrmals hochladen –
Keine Möglichkeit Datei beim Hochladen umzubenennen? –