为了账号安全,请及时绑定邮箱和手机立即绑定

Yii GridView 数据网格作用,以及其优势在哪里?

Yii GridView 数据网格作用,以及其优势在哪里?

PHP
繁花不似锦 2019-03-04 08:09:11
官方文档描述 数据网格或者说 GridView 小部件是Yii中最强大的部件之一。如果你需要快速建立系统的管理后台, GridView 非常有用。它从数据提供者 data provider 中取得数据并使用 columns 属性的一组列配置,在一个表格中渲染每一行数据。 文档地址 这个东西确实可以在实际开发中省去大量的时间,例如:在传统(非前后分离)后台项目中渲染表格,比起使用 html 然后再去 foreach 渲染。省去了不少时间。我想问,是否建议使用这类组件,以及他的优势,或者他的局限性,怎么正确的看待这用这种组件。谢谢大佬!
查看完整描述

1 回答

?
绝地无双

TA贡献1946条经验 获得超4个赞

我来说一下看法吧。

首先Yii框架的前端样式都是基于bootstrap的UI框架的,而且Yii本身有一套非常强大的css和js管理及注入机制。

以上是前提。

然后,我来说一下传统的MVC机制,传统的V层基本上就是直接写HTML,或者用个Smarty模板啥的来封装一层,让PHP的变量赋值尽量像是HTML,目的就是让前端来写PHP程序并且感受不到太多不适感,但是实际上前端依旧还要学习模板引擎的使用,后端也需要学,其实在一定程度上增加了前后端的工作量。

再来看Yii框架的设计方式,Yii框架虽然来说是有View层,但是对于Yii框架来说,View层也是PHP程序来生成的,这样的好处是对于后端来说,基本上类似于使用组件一样,想要什么东西,以后端代码的形式进行调用即可,不关心前端代码,对于PHP本身来说,就会有一种工程化的概念。当然对于后台管理来说,可能内置的这一套View层东西不是特别的美观,但是对于后台管理来说,基本上也不需要要求太多美观上的东西。当然如果想改样式,也是有办法的,此处不做讨论。

而封装好的View层,是以逻辑层面来出发,也就是以我们人为的思想来处理问题,而不需要关注细节是怎么处理这个问题的,这样子从逻辑上来看,更加清晰和友好,开发速度自然也就非常快,带来的好处显而易见。

而我意识到这个东西是我在开发android的时候,android的结构封装其实和这个非常相似,android底层封装了LinearLayout,RelativeLayout等基础视图类,进行界面编写的时候,可以直接调用视图类或者是按照规范编写xml进行布局,而实际上xml其实类似于配置文件,最后生成的还是视图类调用。经过类比,我发现Yii这种实现,貌似借鉴了这种思想,特别有意思。

整体来说是我的一些看法,说感触的话就是多接触一些不同语言开发或者不同语言的不同项目开发,能感受到一些不同的开发思想,特别有意思。

查看完整回答
反对 回复 2019-03-18
  • 1 回答
  • 0 关注
  • 406 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信