文件上传无法在rails中运行

时间:2016-02-20 04:29:34

标签: javascript ruby-on-rails angularjs ng-file-upload

我尝试使用ng-file-upload将文件上传到rails。我的javascript看起来像这样......

$upload.upload({
  url: 'api/my_resource.json',
  data: {
    files: files
  }
})
console.log("files to upload", files);

...其中files是一个文件数组。控制台打印

files to upload [File, File]

当我打印我的Rails控制器收到的请求参数时,我看到了:

Parameters: {"data"=>"{\"files\":[{},{}]}"}

我似乎没有传输文件。有谁知道我做错了什么?

1 个答案:

答案 0 :(得分:0)

我无法使用ng-file-upload工作。相反,我按照here(单个文件上传)和here(多个文件)直接使用javascript进行了操作。

    fd = new FormData()
    for f in files
      fd.append("files[]", f);

    $http.post('/api/my_resource.json', fd, {
        withCredentials: true,
        headers: {'Content-Type': undefined },
        transformRequest: angular.identity
    })