首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将dropzone.js与laravel集成

将dropzone.js与laravel集成
EN

Stack Overflow用户
提问于 2016-02-04 22:09:10
回答 2查看 784关注 0票数 2

我尝试将dropzone.js与laravel 5集成,但在尝试dd($request)时得到空的FileBag。

在我看来:

代码语言:javascript
复制
<form action="create-submit" class="dropzone" enctype="multipart/form-data">...</form>

我包含了dropzone.css和basic.css,也在我的超文本标记语言中包含了dropzone.js。

路由:

代码语言:javascript
复制
Route::get('content/create-submit', [
    'as' => 'create-submit', 'uses' => 'ContentController@createSubmit'
]);

控制器:

代码语言:javascript
复制
public function createSubmit (Request $request) {
    dd($request);
}

我是不是遗漏了什么?

有没有简单的解决方案将dropzone.js集成到laravel?请帮帮忙

EN

回答 2

Stack Overflow用户

发布于 2016-02-05 00:17:07

你在JS中初始化dropzone吗?它应该会自动执行此操作,但有时它不会像预期的那样工作。

所以我要这么做。

代码语言:javascript
复制
<div class="dropzone" id="fileUpload" class="clear">
</div>

<script type="text/javascript" defer="true">
    var token = "{{ Session::getToken() }}";
    Dropzone.autoDiscover = false;
    var myDropzone = new Dropzone("div#fileUpload", {
        url: "{{ route('upload') }}",
        params: {
            _token: token
        }
    });
</script>

在本例中,我们也将CSRF令牌作为请求的一部分进行传递。

我建议使用web开发工具来查看当上传被发送到服务器时会得到什么响应。

更新控制器代码:

代码语言:javascript
复制
if ($request->hasFile('file') && $request->file('file')->isValid()) {
        $file = $request->file('file');
        dd($file);
}
票数 1
EN

Stack Overflow用户

发布于 2017-06-03 23:54:14

尝试手动初始化dropzone,如下所示

代码语言:javascript
复制
jQuery(document).ready(function () {    
var myDropzone = new Dropzone("#my-dropzone", { 
                url: "/dropzone",
                headers: {
                   'x-csrf-token': document.querySelectorAll('meta[name=csrf-token]')[0].getAttributeNode('content').value,
                }
              });
});

在你的控制器中

代码语言:javascript
复制
public function dropzone(Request $request)
    {
        $img    = $request->file('file'); //access dropzone files   
    }

此外,如果没有传递任何头标记,您可能不会收到任何请求。

有关与laravel dropzone集成的更多详细信息,请参阅本教程Integrating Dropzone.js in Laravel 5 applications

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35203218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档