PHPackages                             userwebdevelop/media-handler - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Image &amp; Media](/categories/media)
4. /
5. userwebdevelop/media-handler

ActiveLibrary[Image &amp; Media](/categories/media)

userwebdevelop/media-handler
============================

Trait для работы с изображениями и видео в Yii2-моделях

1.3.2(9mo ago)041MITPHPPHP &gt;=7.4

Since Apr 10Pushed 9mo ago1 watchersCompare

[ Source](https://github.com/userwebdevelop/MediaHandler)[ Packagist](https://packagist.org/packages/userwebdevelop/media-handler)[ RSS](/packages/userwebdevelop-media-handler/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (10)Used By (0)

MediaHandler
============

[](#mediahandler)

Что делает пакет
----------------

[](#что-делает-пакет)

Трейт автоматически создаёт методы `afterSave` и `beforeSave`. В случае, если нужно написать кастомные методы в модели, важно вызывать внутри них методы работы с медиа:

```
public function beforeSave($insert)
{
    $this->handleSingleMedia(); // необходимо для работы с одиночными изображениями
    return parent::beforeSave($insert);
}

public function afterSave($insert, $changedAttributes)
{
    parent::afterSave($insert, $changedAttributes);
    $this->handleImages(); // необходимо для работы с галереей
}
```

---

Установка и настройка
---------------------

[](#установка-и-настройка)

выполнить команду `composer require userwebdevelop/media-handler`

После установки пакета необходимо выполнить следующие шаги (порядок не важен):

В файле `console/config/main.php` добавить:

```
'controllerMap' => [
    // остальной код
    'uwb-media' => 'userwebdevelop\mediahandler\DB',
];
```

В файле `backend\views\layouts\main.php` добавить:

```
\userwebdevelop\mediahandler\assets\MediaHandlerAsset::register($this);
```

---

Примеры использования в админке
-------------------------------

[](#примеры-использования-в-админке)

### Базовое скрытое поле (обязательно всегда):

[](#базовое-скрытое-поле-обязательно-всегда)

```
