Виджет для управления деревом.
Виджет рассчитан на работу с поведениями Павла Зимакова:
Yii2 Adjacency List Behavior
Yii2 Nested Sets Behavior
Yii2 Nested Intervals Behavior
Yii2 Materialized Path Behavior
Отличная статья на Хабре.
The preferred way to install this extension is through composer.
Either run
php composer.phar require --prefer-dist voskobovich/yii2-tree-manager "~1.0"
or add
"voskobovich/yii2-tree-manager": "~1.0"
to the require section of your composer.json
file.
-
Подключите к вашей модели любое из указанных выше поведений
-
Подключите в контроллер дополнительные actions
public function actions()
{
$modelClass = 'namespace\ModelName';
return [
'moveNode' => [
'class' => 'voskobovich\tree\manager\actions\MoveNodeAction',
'modelClass' => $modelClass,
],
'deleteNode' => [
'class' => 'voskobovich\tree\manager\actions\DeleteNodeAction',
'modelClass' => $modelClass,
],
'updateNode' => [
'class' => 'voskobovich\tree\manager\actions\UpdateNodeAction',
'modelClass' => $modelClass,
],
'createNode' => [
'class' => 'voskobovich\tree\manager\actions\CreateNodeAction',
'modelClass' => $modelClass,
],
];
}
- Выведите виджет в удобном месте
use \voskobovich\tree\manager\widgets\nestable\Nestable;
<?= Nestable::widget([
'modelClass' => 'models\ModelName',
]) ?>