Логирование изменений в базе с возможностью последующего отката на предыдущее состояние.
Лучший способ установить - через composer.
Запустить
php composer.phar require --prefer-dist platx/yii2-data-logger "*"
либо добавить
"platx/yii2-data-logger": "*"
в секцию require в файле composer.json
Вашего приложения.
После установки нужно создать и накатить миграцию на создание таблицы для логов:
class m151123_135616_create_table_data_log extends \platx\datalog\DataLogMigration{}
Дальше нужно подключить поведение к моделям, которые могут учавствовать в логировании:
public function behaviors()
{
return [
'data-log' => [
'class' => 'platx\datalog\DataLogBehavior',
'apps' => ['app-backend', 'app-frontend'],
]
...
];
}
где apps
- массив с ID разрешенных приложений, которые будут логироваться, по умолчанию - app-backend
.
Логирование настроено. Дополнительным функционалом является откат изменений на предыдущее состояние, для этого можно воспользоваться следующими екшенами в нужном контроллере:
public function actions()
{
return [
'index' => [
'class' => 'platx\datalog\actions\IndexAction',
'viewFile' => 'index',
'pageSize' => 20
],
'view' => [
'class' => 'platx\datalog\actions\ViewAction',
'viewFile' => 'view'
],
'rollback' => [
'class' => 'platx\datalog\actions\RollbackAction',
'redirectUrl' => ['index']
],
'delete' => [
'class' => 'platx\datalog\actions\DeleteAction',
'redirectUrl' => ['index']
],
];
}
где viewFile
- представление, куда выводить данные. pageSize
- количество записей на
страницу, redirectUrl
- куда перенаправлять.
IndexAction в представление передает $dataProvider, ViewAction - $model.
No stable releases.
Comments