mlcsthor/yii2-media-manager

此包已被弃用且不再维护。未建议替代包。
此包最新版本(1.0)没有可用的许可信息。

Yii2 媒体管理模块

安装: 63

依赖: 0

建议者: 0

安全: 0

星标: 0

关注者: 1

分支: 7

类型:yii2-module

1.0 2018-06-14 11:58 UTC

This package is not auto-updated.

Last update: 2020-01-24 17:53:53 UTC


README

此模块为您的 Yii2 应用程序提供媒体管理器集成。它仍处于早期阶段,但请自由使用、报告错误和贡献。

screenshot

演示

https://www.iutbayonne.univ-pau.fr/~klevron/mm/

安装

安装此模块的首选方式是通过 composer

运行以下命令之一:

composer require "mlcsthor/yii2-media-manager" "*"

"mlcsthor/yii2-media-manager" : "*"

将以下内容添加到您应用程序的 composer.json 文件的 require 部分。

配置

在您的应用程序配置中添加以下行

'components' => [
    // ...
    'urlManager' => [
        'enablePrettyUrl' => true,
        'showScriptName' => false,
        'rules' => [    
            'thumbs/<path:.*>' => 'mm/thumb/thumb',
            // ...
        ],
    ],
    // ...
    'fs' => [
        'class' => 'creocoder\flysystem\LocalFilesystem',
        'path' => '@webroot/upload',
    ],
],
'modules' => [
    // ...
    'mm' => [
        'class' => 'mlcsthor\mediamanager\Module',
    ],
],

关于 Flysystem

此模块使用 Flysystem(通过 creocoder/yii2-flysystem),这是一个文件系统抽象,允许您轻松地将本地文件系统与远程文件系统交换

您可以使用之前描述的本地文件系统,您应该在您的 Yii2 应用程序的 web 文件夹中创建一个 upload 文件夹。您还可以使用 Flysystem 提供的任何 适配器,请参阅 Flysystemcreocoder/yii2-flysystem

警告:实际上,此模块仅与 localftpsftp 适配器进行了测试。

关于图片缩略图

此模块使用 Imagine(通过 yii2-imagine)来按需生成图片缩略图,您应该在应用程序的 web 文件夹中创建一个 thumbs 文件夹。

使用方法

MediaManagerInput

use mlcsthor\mediamanager\widgets\MediaManagerInput;

echo MediaManagerInput::widget([
    'name' => 'test', // input name
    'multiple' => false,
    'clientOptions' => [
        'api' => [
            'listUrl' => Url::to(['/mm/api/list']),
            // 'uploadUrl' => Url::to(['/mm/api/upload']),
            // 'downloadUrl' => Url::to(['/mm/api/download']),
            // 'deleteUrl' => Url::to(['/mm/api/delete'])
        ],
    ],
]);

MediaManagerModal

use mlcsthor\mediamanager\widgets\MediaManagerInputModal;

echo MediaManagerInputModal::widget([
    'name' => 'test', // input name
    'clientOptions' => [
        'api' => [
            'listUrl' => Url::to(['/mm/api/list']),
            // 'uploadUrl' => Url::to(['/mm/api/upload']),
            // 'downloadUrl' => Url::to(['/mm/api/download']),
            // 'deleteUrl' => Url::to(['/mm/api/delete'])
        ],
    ],
]);