tadcms/filemanager

适用于与 CKEditor / TinyMCE 一起使用的 Laravel 文件管理器。文件管理器在数据库表中,不要在服务器文件夹中浏览。

v1.0.4 2021-05-08 06:45 UTC

This package is auto-updated.

Last update: 2024-09-11 18:15:53 UTC


README

适用于与 CKEditor / TinyMCE 一起使用的 Laravel 文件管理器。文件管理器在数据库表中,不要在服务器文件夹中浏览。 文件管理器演示

功能

  • 数据库媒体和媒体文件夹
  • 分块上传支持
  • CKEditor 和 TinyMCE 集成
  • 上传验证
  • 图像裁剪和缩放
  • 添加自定义支持类型
  • 上传后图像优化
  • 多媒体选择

安装

  • 安装包
composer require tadcms/filemanager
  • 发布包的配置和资产
php artisan vendor:publish --provider="Tadcms\FileManager\Providers\FileManagerServiceProvider" --tag=config
php artisan vendor:publish --provider="Tadcms\FileManager\Providers\FileManagerServiceProvider" --tag=assets
  • 迁移
php artisan migrate
  • 创建符号链接
php artisan storage:link
  • 编辑 routes/web.php
Route::group(['prefix' => 'file-manager', 'middleware' => ['web', 'auth']], function (){
    \Tadcms\FileManager\Routes::web();
});

使用方法

使用 \Illuminate\Http\UploadedFile 添加媒体

use Tadcms\FileManager\Facades\FileManager;

FileManager::withResource(request()->file('upload_file'))
    ->setFolder($folder_id)
    ->setType($type)
    ->save();

使用 URL 添加媒体

use Tadcms\FileManager\Facades\FileManager;

FileManager::withResource($urlFile)
    ->setFolder($folder_id)
    ->setType($type)
    ->save();

使用路径添加媒体

use Tadcms\FileManager\Facades\FileManager;

FileManager::withResource($pathFile)
    ->setFolder($folder_id)
    ->setType($type)
    ->save();

参数

$folder_id: Id lfm_folder_media table
$type: image/file or customs your type

配置

<?php

return [
    /**
     * Prefix route your file manager
     * Default: file-manager
     * */
    'route_prefix' => env('LFM_PREFIX', 'file-manager'),
    /**
     * File system disk for upload by file-manager
     * Default: public
     * */
    'upload_disk' => env('UPLOAD_DISK', 'public'),

    /**
     * File system disk for temps file
     * Default: local
     * */
    'temp_disk' => env('TEMP_DISK', 'local'),

    /**
     * Optimizer image after upload by file manager
     * You can install the necessary binaries to use
     * Read more: https://github.com/spatie/image-optimizer/blob/master/README.md
     *
     * Default: false
     * */
    'image-optimizer' => false,

    /**
     * File type for file manager: type=filetype
     * You can add new file type
     * Default: image, file
     * */
    'file_types' => [
        'image' => [
            /**
             * Max file size upload for type=image (MB)
             * Default: 15 MB
             * */
            'max_file_size' => 15, //MB
            /**
             * Mime Types file allowed upload for type=image
             * Default: 15 MB
             * */
            'mimetypes' => [
                'image/jpeg',
                'image/pjpeg',
                'image/png',
                // ...
            ]
        ],
        'file' => [
            'max_file_size' => 1024, //MB
            'mimetypes' => [
                'image/jpeg',
                'application/pdf',
                // ...
            ]
        ],
    ]
];

致谢

Laravel 文件管理器

许可证

Laravel 文件管理器包是开源软件,许可协议为 MIT 许可证