iutbay/yii2-mm

此包的最新版本(dev-master)没有可用的许可证信息。

Yii2 媒体管理模块

安装量: 1,254

依赖项: 0

建议者: 0

安全性: 0

星标: 13

关注者: 5

分支: 8

开放问题: 6

类型:yii2-module

dev-master 2017-05-05 07:38 UTC

This package is not auto-updated.

Last update: 2024-09-15 02:38:18 UTC


README

此模块为您的 Yii2 应用程序提供了一个 媒体管理器 集成。它目前还处于早期阶段,但您可以使用它,报告错误,并做出贡献。

screenshot

演示

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

安装

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

运行以下命令:

composer require "iutbay/yii2-mm" "*"

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

"iutbay/yii2-mm" : "*"

配置

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

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

关于 Flysystem

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

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

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

关于图片缩略图

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

使用方法

MediaManagerInput

use iutbay\yii2\mm\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']),
        ],
    ],
]);

MediaManagerModal

use iutbay\yii2\mm\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']),
        ],
    ],
]);