小九博客

  • 首页
  • 编程开发
  • 信息安全
  • 工具资源
  • 随笔
  • 在线工具
    • 在线图片水印
    • Json解析
    • JavaRuntimeExec
    • 加解密/编码工具集
  • 关于
小九博客
Hack The World!
  1. 首页
  2. 编程开发
  3. 正文

Yii2-Editable插件【GridView编辑】

2018年01月16日

项目过程中遇到一个这样的需求,想要在表格页面(GridView所在页)直接修改数据。在yiiframework.com进行一番探索,发现了yii2-editable插件。通过github搜索发现了N款yii2-editable插件。我们挑选综合排名前三个进行试用。

1.kartik-v/yii2-editable

  • 项目github地址:https://github.com/kartik-v/yii2-editable

  • 项目文档地址:http://demos.krajee.com/editable

  • 开源协议:BSD-3-Clause license

  • 优点
     - Star最多
     - 国内有教程介绍该插件(讲解不细)
     - 文档,演示比较完善
     - 有两种样式,【按钮式,Link式】点击修改数据
     - 数据形式多样【DatePicker、textarea、select等等】

  • 缺点
     - 依赖于其它项目:如果要在GridView上使用该插件,需安装kartik-v/yii2-grid。或者使用

    1
    2
    3
    'value'=>function($model){
    return \kartik\editable\Editable::widget([]);
    }

     的形式。这种形式需要改写controller,要写的内容较多。
     - 保存按钮很怪。保存按钮是一个下载图标。。

** 具体使用介绍后续完善。**//TODO

2.yii2mod/yii2-editable

  • 项目github地址:https://github.com/yii2mod/yii2-editable

  • 项目文档地址:https://github.com/yii2mod/yii2-editable#yii2-editable-widget

  • 开源协议:MIT license

  • 优点
     - 简单易用,使用简单方便
    1.在view层GirdView里需要的字段改写成如下代码。

    1
    2
    3
    4
    5
    [
    'class'=>EditableColumn::class,//Editable字段类
    'attribute' => 'name',//字段名称
    'url' => ['change-name'],//路由参数
    ],

      2.在Controller里actions方法里加入如下代码:

    1
    2
    3
    4
    5
    $actions=parent::actions();
    $actions['change-name']=[
       'class' => EditableAction::class,//EditableAction类
       'modelClass' => User::class,//数据model类
     ];
  • 缺点
     - 没完善的文档

3.2amigos/yii2-editable-widget

  • 项目github地址:https://github.com/2amigos/yii2-editable-widget

  • 项目文档地址:https://github.com/2amigos/yii2-editable-widget#x-editable-widget-for-yii2

  • 开源协议:The BSD License (BSD).

  • 优点
     - 作者是团队
     - 良好的单元测试提供
     - 数据形式多样

  • 缺点
     - 没完善的文档

总结

以上三款插件除官方推荐插件kartik-v/yii2-editable外,其余两个插件都是基于x-editable外部Jquery组件制作的。

因此kartik-v/yii2-editable的文档比较完善
(PS.稍微有点乱,也可能是我看到一片一片的英文产生的感觉。。)

而其它两个插件的文档只能通过阅读X-Editable文档进行更多定制。

不过可以根据项目大小选择适合的项目

如果项目不是很大,这样的需求较弱,建议使用yii2mod/yii2-editable插件,因为其小巧精致,使用简单。如果项目已经完成,再改写起来,使用该插件较为方便。并且可以很方便的在GridView上改写使用。

如果该需求较强,建议使用kartik-v和2amigos的项目。这俩项目在单独的插件形式使用上,功能比较多。

这三款插件都是Yii2插件常见的贡献者。尤其是kartik-v和2amigos团队。感谢他们对Yii2作出的贡献。

标签 Yii2 yii2-editable
最后更新:2018年01月16日

文章评论

小九

Just For Fun

文章大纲
  1. 1.kartik-v/yii2-editable
  2. 2.yii2mod/yii2-editable
  3. 3.2amigos/yii2-editable-widget
  4. 总结
分类目录
  • 编程开发
  • Yii2
  • 随笔
  • 工具资源
  • Django
  • 信息安全
标签聚合
Docker漏洞 yii2-事件 php框架 DNSRebind 学习资料 GlaryUtilitiesPro
随机 最新 热点
随机 最新 热点
Codeception(三) Glary Utilities PRO注册码 Yii2 Event事件-初识 OpenSearch集群部署 Yii2 资源大全 PHP-Xdebug
OpenSearch集群部署 DNSRebind攻击 MySQL数据同步到ElasticSearch(Logstash方案)爬坑纪实 自动化编排学习(一)部署篇 常见容器漏洞总结 免费CDN加速手把手教程

COPYRIGHT © 2021 小九博客 ALL RIGHTS RESERVED.