laravel-admin 1.x 版本 调用前端组件中多图上传采坑记录

背景:在使用模型树页面布局时调用 laravel-admin前端组件中多图上传,删除bug

写在前面:有则改之,无则加勉
laravel-admin 1.x 版本 调用前端组件中多图上传采坑记录

代码展示

laravel-admin 1.x 版本 调用前端组件中多图上传采坑记录

布局
    public function index(Content $content)
    {
        $content->header('栏目管理');// 标题 详见Content方法解析
        $content->breadcrumb(['text' => 'Column'],); // 面包屑导航
        $form = $this->form();
        $form->setAction('/admin/columns');// form表单数据提交地址
        $content->row(function(Row $row) use ($form){
            $row->column(6, $this->tree()); // 模型树调用
            $row->column(6, $form);// $form引入
        });
        return $content;
    }
前端组件
protected function form()
{
    return Admin::form(Column::class, function (Form $form) {
        $form->select('parent_id', __('Parent id'))->options(Column::selectOptions());
        $form->text('column_title', __('Column title'))
            ->rules('required|unique:columns, "column_title", {{id}}', [
                'required' => '分类名称不能为空',
                'unique' => '分类名称不能重复'
        ]);
        $form->multipleImage('cover', __('Cover'))->removable()->help('可使用“Ctrl”进行多图上传');
        $form->text('link', __('Link'));
        $form->textarea('abstract', __('Abstract'));
        $form->UEditor('content', __('Content'));
        $form->tools(function (Form\Tools $tools) {
        $tools->disableList();
        $tools->disableView();
        });
        $form->footer(function ($footer) {
            $footer->disableViewCheck();
            $footer->disableEditingCheck();
            $footer->disableCreatingCheck();
            });
        $form->saved(function (){
            return redirect('/admin/columns'); // 完成后跳转页
        });
    });
}

排错过程

1.首

  1. 首先是百度了错误信息 ×SyntaxError: Unexpected token < in JSON at position 0
  2. 结果是 JSON.parse 解析不了(很迷惑,因为本人前端比较菜。这是josn数据转换不了?)
于是看了一下删除时模型中数据的传递格式
  1. var_dump() 结果是数组,what?
  2. 删除数据传递的是[],啊?这!(更疑惑了)
然后瞅了瞅底层代码

laravel-admin 1.x 版本 调用前端组件中多图上传采坑记录

到现在为止,依然不知道问题是怎么产生的,于是我换了种思路…

2.转

在其他非布局模块中尝试多图上传,删除可用。

问题找到了

3.尾

  1. 其他模块可以使用也就是说是前端组件的问题
  2. 我突然注意到,这是布局后的页面,前端组件中删除完成后会调起跳转,错便错在这个地方。
  3. 于是我将此 注释掉 问题解决
         $form->saved(function (){
             return redirect('/admin/columns'); // 完成后跳转页
         });
本作品采用《CC 协议》,转载必须注明作者和本文链接
it_cwc
《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!