用户
 找回密码
 入住 CI 中国社区
搜索
查看: 2428|回复: 4
收起左侧

HTML 表格类 是不是在破坏MVC????

[复制链接]
发表于 2012-2-16 12:02:15 | 显示全部楼层 |阅读模式
CI本身是一个MVC的框架,提供HTML表格类,不是又破坏了MVC模式或画蛇添足么???
有一下几点不解,希望有人解释一下.
文档 :CodeIgniter 中国首页 ›  用户指南首页 › HTML 表格类

自动生成表格.请问在什么情况下回使用这种方法生成表格?
PHP复制代码
$this->load->library('table');
 
$data = array(
             array('Name', 'Color', 'Size'),
             array('Fred', 'Blue', 'Small'),
             array('Mary', 'Red', 'Large'),
             array('John', 'Green', 'Medium')
             );
 
echo $this->table->generate($data);
 
复制代码


改变表格的样子.我真觉得蛋疼.MVC讲求模板分离,下边貌似更复杂了...
PHP复制代码
$tmpl = array (
                    'table_open'          => '<table border="0" cellpadding="4" cellspacing="0">',
 
                    'heading_row_start'   => '<tr>',
                    'heading_row_end'     => '</tr>',
                    'heading_cell_start'  => '<th>',
                    'heading_cell_end'    => '</th>',
 
                    'row_start'           => '<tr>',
                    'row_end'             => '</tr>',
                    'cell_start'          => '<td>',
                    'cell_end'            => '</td>',
 
                    'row_alt_start'       => '<tr>',
                    'row_alt_end'         => '</tr>',
                    'cell_alt_start'      => '<td>',
                    'cell_alt_end'        => '</td>',
 
                    'table_close'         => '</table>'
              );
 
$this->table->set_template($tmpl);
 
复制代码



好吧,就拿这两个例子吧.请问这些是写到c层,还是写到v层?它生成的效率比直接从c传递数据,v层循环输出快吗???

发表于 2012-2-16 13:30:44 | 显示全部楼层
表格和分页啥的最痛苦了~
ci的分页类实在不怎么好用,不过表格类可以简化View,lz说的这些写一次就好了,有相同的表格不用每次都写一大堆东西。data和tmp在C里写好,View里直接生成要好看些吧,修改样式的时候也方便
发表于 2012-2-17 10:17:53 | 显示全部楼层
推荐直接写html代码,效率高。
发表于 2012-2-17 12:35:28 | 显示全部楼层
hansonfox 发表于 2012-2-16 13:30
表格和分页啥的最痛苦了~
ci的分页类实在不怎么好用,不过表格类可以简化View,lz说的这些写一次就好了,有 ...

我个人不同意你的观点,CI 的分页类还是很好用的,可以实现各种分页效果,包括AJAX分页。
当然你需要做点小扩展。
我认为用CI而不去扩展,那还不如用 Zend Framework,呵呵
发表于 2012-2-17 13:19:42 | 显示全部楼层
我也觉得直接写html代码比较好,特别表格有JS的时候,看起来也方便

本版积分规则