以前用 laravel admin 寫後臺,最大的阻力之一,就是圖片
儘管官方有 multipleImages 可以支援多圖,但發現順序無法拖拽,重新編輯圖片會不見,程式碼又要重寫等
於是乎,又又又擼了個輪子
專案地址 : https://github.com/Hanson/laravel-admin-qi... (例行求 star )
Laravel admin 框架的七牛 qiniu 多圖上傳擴充套件,可拖拽,非同步上傳圖片,支援刪除
安裝
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 協議》,轉載必須註明作者和本文連結