Laravel admin 多图七牛扩展,异步、可拖拽顺序、可删除

以前用 laravel admin 写后台,最大的阻力之一,就是图片

尽管官方有 multipleImages 可以支持多图,但发现顺序无法拖拽,重新编辑图片会不见,代码又要重写等

于是乎,又又又撸了个轮子

项目地址 : https://github.com/Hanson/laravel-admin-qi... (例行求 star )

laravel-admin-qiniu

Laravel admin 框架的七牛 qiniu 多图上传扩展,可拖拽,异步上传图片,支持删除

1_7M_G0VFANP6HK48EEL2QO.png

__FP8P8`VX`LN_Y3__4K762.png

安装

composer require hanson/laravel-admin-qiniu:dev-master -vvv

配置

config/filesystems.php 增加一个 disk

<?php

return [
   'disks' => [
        //...
        'qiniu' => [
           'driver'     => 'qiniu',
           'access_key' => env('QINIU_ACCESS_KEY', 'xxxxxxxxxxxxxxxx'),
           'secret_key' => env('QINIU_SECRET_KEY', 'xxxxxxxxxxxxxxxx'),
           'bucket'     => env('QINIU_BUCKET', 'xxx'),
           'domain'     => env('QINIU_DOMAIN', 'xxx.clouddn.com'), // or host: https://xxxx.clouddn.com
        ],
        //...
    ]
];

使用

<?php

$form = new \Encore\Admin\Form(new Goods);

$form->qiniuImages('column', '商品图')->sortable(); // 普通用法

$form->qiniuImages('column', '商品图')
    ->sortable() // 让图片可以拖拽排序
    ->extraData(['disk' => 'qiniu2', 'path' => 'avatar']) // 假如你有多个七牛配置,可以通过指定此处的 disk 进行上传, path 为文件路径的前缀
    ->value(['http://url.com/a.jpg', 'http://url.com/b.jpg']); // 默认显示的图片数组,必须为 url

$form->saving(function (\Encore\Admin\Form $form) {
    $paths = \Hanson\LaravelAdminQiniu\Qiniu::getPaths(request('qiniu_column')); // 需要 qiniu_ 作为前缀的字段
});
本作品采用《CC 协议》,转载必须注明作者和本文链接

提供优质的软件服务

Hanson
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《L03 构架 API 服务器》
你将学到如 RESTFul 设计风格、PostMan 的使用、OAuth 流程,JWT 概念及使用 和 API 开发相关的进阶知识。
讨论数量: 6
takashiki

要是前端组件和数据存储能解耦就更好了

2周前 评论
Hanson

@takashiki 怎么个解耦?

2周前 评论
Summer

多产哈

2周前 评论
Hanson

@Summer 宅在家就先磨刀

2周前 评论

可以用阿里oss 吗?

2周前 评论
Hanson

@liaosp 我这个项目不支持,要兼容的话需要改,我会考虑一下

2周前 评论

请勿发布不友善或者负能量的内容。与人为善,比聪明更重要!