beatep / yii2-sortable-widgets
Implementation Rubaxa/Sortable for Yii2. Sortable grid view inside.
Installs: 1 707
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 23
Language:JavaScript
Type:yii2-extension
Requires
- yiisoft/yii2: *
This package is not auto-updated.
Last update: 2025-06-30 16:55:37 UTC
README
Implementation Rubaxa/Sortable for Yii2 widgets. Position starts with 1.
Supported:
- GridView widget.
Usage
Create a new migration, change a parent to the migration class from the extension and specify the table name property:
class m140811_131705_Models_order extends \beatep\sortable\migrations\Migration { protected $tableName = 'models'; }
Add the sortable behavior to your model and specify the query property:
public function behaviors() { return [ 'sortable' => [ 'class' => \beatep\sortable\behaviors\Sortable::className(), 'query' => self::find(), ], ]; }
Add the sorting action to your controller and specify the query property:
public function actions() { return [ 'sorting' => [ 'class' => \beatep\sortable\actions\Sorting::className(), 'query' => \vendor\namespace\Model::find(), ], ]; }
Add the column to your grid view and specify the sorting url like here:
echo \yii\grid\GridView::widget([ 'dataProvider' => $model->search(), 'rowOptions' => function ($model, $key, $index, $grid) { return ['data-sortable-id' => $model->id]; }, 'columns' => [ [ 'class' => \beatep\sortable\grid\Column::className(), ], 'id', 'title', 'order', ], 'options' => [ 'data' => [ 'sortable-widget' => 1, 'sortable-url' => \yii\helpers\Url::toRoute(['sorting']), ] ], ]);