对spPager的一点建议

#1 sa0811

小弟是从其他语言转到php的,暂时处于新手阶段,昨天看到speedPHP之后,一直在做留言本的例子

今天做到留言分页的时候,发现在Control里面分页以后,还要在view里面写一堆代码,按照我的理解来看应该就是以后每个模板页面用到分页的时候都要写这段代码..根据以前的语言的习惯,大胆给Sp一个建议:

可以不可以在spPager类里面加个setPager和toHtml方法,setPager方法用来定义分页的样式以及规则(是否包含数字分页,是否包含数字分页,跳转分页等..),有一个默认的样式,如果不设置就调用默认的

toHtml方法就根据setPager里面的方法生成分页的HTML代码,在Smarty里面调用$pager.toHtml方法输出,这样是不是就不用在每个分页的模板里写入这一大段代码了?
或许php/smarty本身就可以实现这样的功能,小弟初学PHP,如有不足请多指教.

2012-07-08 12:49:42

#2 jake

你的见解不错,当然论坛里面也有不少分页的简便做法,比如说http://www.speedphp.com/bbs/forum.php?mod=viewthread&tid=679

平时遇到问题多搜索就行。

另外,顺便说说看,为什么spPager不会有toHtml之类的函数,而toHtml按上面的24分页例子是放到模板注册函数里面做。

spPager是MVC中的M层,主管数据分段获取,M层只能操作“数据”,而不提供任何“显示”的方法。“显示”的方法应该是MVC中的V层,也就是显示层实现。而模板注册函数,就是V层的功能,所以你所看到的“大段的分页HTML”,就可以放到模板注册函数内实现,或者跟简单include一下子模板也是可以的。

2012-07-08 15:03:50

#3 sa0811

jake 发表于 2012-7-8 15:03
你的见解不错,当然论坛里面也有不少分页的简便做法,比如说http://www.speedphp.com/bbs/forum.php?mod=vi ...
谢谢老大的回复,看了你回复里的那个帖子,正是我想要的内容..因为是新手,所以不了解smarty可以这么处理..
学习到了,对MVC也有了新的认识.

2012-07-08 15:16:19