Yii实战中8个必备常用的扩展,模块和widget

在经过畅K网 的实战后,总结一下在Yii的项目中会经常用到的组件和一些基本的使用方法,分享给大家,同时也给自己留个备忘录,下面我以代码加图片说明.

1. Ajax多文件上传组件 (swfupload ).

直达地址:  http://www.yiiframework.com/extension/swfupload

Yii本身提供了 CUploadedFile(单文件上传) 和 CMultiFileUpload(多文件上传) widget组件,但是如里要

打造高性能的基于Ajax的多文件上传,就目前我所理解的,这个是一个比较好的解决方案,上传几个美女作为演式.

例图:

注:需要配合 CActiveForm 使用客户端验证和Ajax验证方可

2. 图片处理( image)

上传完图片,当然还要进行图片处理,

直达地址:  http://www.yiiframework.com/extension/image

优点: 功能强大,简单易用,易扩展,支持GD和IM

缺点: 不支持水印,如果需要水印要自己扩展.

例,生成的缩略图:

3. 所见所得编辑器组件( tinymce)

直达地址: http://www.yiiframework.com/extension/tinymce

结合上面两个组件swfupload 和 image, 打造的强大所见所得编辑器.

这是畅K网 和IT快讯网 的例图:

如果你的tinymce 需要代码高亮显示功能,参见我写的这篇文章.

Yii tinymce结合syntaxHighlighter和syntaxhl实现语法高亮

如果你需要更加轻量级的,可以考虑使用markitup .

4. rights模块,一个强大灵活的生台权限管理.

直达地址: http://www.yiiframework.com/extension/rights

例图:

优点: 强大灵活的图形管理界面,支持角色权限继承概念.

缺点: 由于过于灵活,存在很大的性能问题,如果流量大而没有能力扩展和修改该模块,建议使用其它模块.

上面例图是我扩展了菜单动态授权以及进行了简化,优化了性能的版本,扩展了该模块的过滤器支持角色权限和角色菜单动态配置.

5. debugtoolbar 调式组件.

直达地址:  http://www.yiiframework.com/extension/yiidebugtb

6. mail(发送邮件)

直达地址: http://www.yiiframework.com/extension/mail

一个SwiftMailer包装,这个大家肯定用得着.

7. facebox,支持Ajax和图片显示的facebook风格Dialog.

可应用于很多场合,像在畅K网 中,我使用收藏店铺,图片显示等等.

例图:

缺点: 只能显示一张图片.

8. fancybox 多图片显示就需要用到这个拉.

直达地址: http://www.yiiframework.com/extension/fancybox

还有很多像内置的CStarRating(投票widget), 就不再一一列出,文档有详细介绍.这是个人在项目中常用的就这些,欢迎大家分享好更多实用的模块和插入.

Yii实战中8个必备常用的扩展,模块和widget的更多相关文章

  1. 转:Yii实战中8个必备常用的扩展,模块和widget

    转载自:http://www.yiiframework.com/wiki/180/yii8/ 在经过畅K网的实战后,总结一下在Yii的项目中会经常用到的组件和一些基本的使用方法,分享给大家,同时也给自 ...

  2. yii模板中常用变量总结

    yii模板中常用的一些变量总结. 现有这样一个url:http://www.phpernote.com/demos/helloworld/index.php/xxx/xxx 则通过如下方式获取的值对应 ...

  3. SSIS从理论到实战,再到应用(7)----常用的数据类型转换操作

    原文:SSIS从理论到实战,再到应用(7)----常用的数据类型转换操作 上期回顾: SSIS从理论到实战,再到应用(6)----SSIS的自带日志功能 在抽取各种应用的数据时候,经常会遇到数据需要转 ...

  4. Bugku-CTF之网站被黑(这个题没技术含量但是实战中经常遇到)

    Day11   网站被黑   http://123.206.87.240:8002/webshell/    

  5. Hybrid App 应用开发中 9 个必备知识点复习(WebView / 调试 等)

    前言 我们大前端团队内部 ?每周一练 的知识复习计划继续加油,本篇文章是 <Hybrid APP 混合应用专题> 主题的第二期和第三期的合集. 这一期共整理了 10 个问题,和相应的参考答 ...

  6. Nmap在实战中的高级用法(详解)

    @ 目录 Nmap在实战中的高级用法(详解) Nmap简单的扫描方式: 一.Nmap高级选项 1.查看本地路由与接口 2.指定网口与IP地址 3.定制探测包 二.Nmap扫描防火墙 1.SYN扫描 2 ...

  7. ashx中Response.ContentType的常用类型

    ashx中Response.ContentType的常用类型: text/plaintext/htmltext/xmlapplication/jsonimage/GIFapplication/x-cd ...

  8. DataGridView 中添加CheckBox和常用处理方式 .

    DataGridView 中添加CheckBox和常用处理方式 文章1 转载:http://blog.csdn.net/pinkey1987/article/details/5267934 DataG ...

  9. Yii 框架中安装 memcache 及配置和测试

    安装php_memcache.dll扩展 1.首先将php_memcache.dll文件放入E:\server\php\ext目录下 (php_memcache.dll下载地址:http://wind ...

随机推荐

  1. 解决 VUE 微信登录验证 【感谢原文:https://segmentfault.com/a/1190000009493199】

    [感谢原文:https://segmentfault.com/a/1190000009493199] SPA单页应用中微信授权登录的一点思路 单页应用应该如何解决微信授权登录的尴尬跳转?后退无法返回? ...

  2. 【git】之使用eclipse-git插件查看本地文件和远程文件区别

    选中文件右键 Team->Show Local History 在历史中右键 Compare Current with Local

  3. 学习笔记之Sublime Text

    Sublime Text - A sophisticated text editor for code, markup and prose https://www.sublimetext.com/ A ...

  4. 弹性势能,position,min用法,获取元素的宽

    弹性势能: 网页div移动的mousemove的次数,跟div移动的距离没有关系,跟鼠标移动的快慢有关,浏览器自身有个计数事件,几毫秒 _this.seed*=0.95 //摩擦系数的写法 posit ...

  5. BGP属性+13条选路原则(转载)

    原文:http://blog.sina.com.cn/s/blog_be409c2f0102x6sg.html BGP(Border Gateway Protocol)边界网关协议 BGP(Borde ...

  6. maven使用笔记--在父pom中声明过的jar可以被继承,使子项目不用写版本号由父pom控制

    将dependencies放到dependencyManagement中,如下: [html] view plaincopy <dependencyManagement> <depe ...

  7. MySQL MHA 搭建&测试(环境:CentOS7 + MySQL5.7.23)

    MySQL MHA架构介绍: MHA(Master High Availability)目前在MySQL高可用方面是一个相对成熟的解决方案,它由日本DeNA公司youshimaton(现就职于Face ...

  8. java 两个日期之间的天数

    private static int numDays(String start,String end){ Calendar startCal=Calendar.getInstance(); Strin ...

  9. U3D学习10——关节和射线检测

    1.弹簧  2.铰链  3.固定关节  4.角色关节  5.自定义关节  6.raycast和raycasthit 射线有位移参数,可以设定只触发某一层的. 7.射线检测用于高速和精确 update是 ...

  10. ubuntu下 net core 安装web模板

    ---恢复内容开始--- 今天想试试在Linux用C#开发WebAPI,查了下,要用: dotnet new -t Web 来建立工程,结果我试了下,出来这段: Invalid input switc ...