Yii2 列表拖动排序扩展 [ 2.0 版本 ]
原文链接:https://blog.oonne.com/site/blog?id=10
简介
Yii2 可拖动排序的GridView扩展。拖动操作基于jQuery UI的sortable widget。
安装
通过composer安装。
执行以下命令:
php composer.phar require --prefer-dist "oonne/yii2-sortable-grid-view-widget" "*"
或者把以下内容添加到composer.json中:
"oonne/yii2-sortable-grid-view-widget" : "*"
使用
首先在需要排序的表中增加排序的字段,比如“sequence”。
这个字段需要unsigned int类型,获取这张表的内容时基于这个字段倒序排序。拖动排序时,每行的排序字段会跟着改变。
在model里增加一个behavior,代码如下:
use oonne\sortablegrid\SortableGridBehavior;
public function behaviors()
{
return [
'sort' => [
'class' => SortableGridBehavior::className(),
'sortableAttribute' => 'sequence'
],
];
}
在controller里增加一个action,代码如下:
use oonne\sortablegrid\SortableGridAction;
public function actions()
{
return [
'sort' => [
'class' => SortableGridAction::className(),
'modelName' => Model::className(),
],
];
}
在view里加入widget,代码如下:
use oonne\sortablegrid\SortableGridView;
SortableGridView::widget([
'dataProvider' => $dataProvider,
'sortableAction' => ['/bannersuper/sequence'],
'columns' => [
[
'class' => 'yii\grid\SerialColumn',
'contentOptions' => ['class' => 'sortable-handle'],
],
[
'attribute' => 'sName',
],
]
])
拖动每个tr里加入'.sortable-handle'的tr,可以对整行进行拖动排序。其他内容可以正常选择和操作,不可拖动。详见Jquery UI sortable widget的文档。
JAY
注册时间:2017-02-21
最后登录:2022-09-27
在线时长:32小时19分
最后登录:2022-09-27
在线时长:32小时19分
- 粉丝10
- 金钱6225
- 威望50
- 积分7045
共 3 条评论
要是有效果图就更好了
就跟普通的GridView一样,只是多了拖动的功能
你好,这个插件现在是下载不了了吗
抱歉名字写错了,应该是:
php composer.phar require --prefer-dist "oonne/yii2-sortable-grid-view" "*"
或者把以下内容添加到composer.json中:
"oonne/yii2-sortable-grid-view" : "*"
好嘞,多谢(〃'▽'〃)
感谢楼主!又学了一招!