由play开发分页想到的,关于MVC结构的一些思考。
2011-07-03 08:27
316 查看
在分页中是要限制 上一页 下一页 的边界的,所以如果把这个 判断放到C层就会很复杂
比如
//公司动态,业界动态(多条信息的news)
public static void businessNews(int pageIndex,int type){
if(pageIndex<1)businessNews(1,type);
int count=News.countPage(type);
if(count==0){pageIndex=1;render(type,pageIndex);};
if(pageIndex>count)businessNews(count,type);
List<News> newss=News.findByPage(type,pageIndex);
render(newss,type,pageIndex);
}
但是如果把这一部分逻辑转移到view层
<span><a href="@@{hrc.businessNews(pageIndex>1?pageIndex-1:1)}">上一页</a></span>
<span><a href="@@{hrc.businessNews(pageIndex<count?pageIndex+1:count)}">下一页</a></span>
就会简单许多。
但是这样还是没有完全封闭,因为有时候 用户会自己输入地址 或是历史栏中还保留着已经被删除的页码,这样你可以在c层中进行简单判断 将路径转向 一个资源不存在的 提示页面。
比如
//公司动态,业界动态(多条信息的news)
public static void businessNews(int pageIndex,int type){
if(pageIndex<1)businessNews(1,type);
int count=News.countPage(type);
if(count==0){pageIndex=1;render(type,pageIndex);};
if(pageIndex>count)businessNews(count,type);
List<News> newss=News.findByPage(type,pageIndex);
render(newss,type,pageIndex);
}
但是如果把这一部分逻辑转移到view层
<span><a href="@@{hrc.businessNews(pageIndex>1?pageIndex-1:1)}">上一页</a></span>
<span><a href="@@{hrc.businessNews(pageIndex<count?pageIndex+1:count)}">下一页</a></span>
就会简单许多。
但是这样还是没有完全封闭,因为有时候 用户会自己输入地址 或是历史栏中还保留着已经被删除的页码,这样你可以在c层中进行简单判断 将路径转向 一个资源不存在的 提示页面。
相关文章推荐
- 关于软件开发的一些常识和思考
- 关于软件开发的一些常识和思考
- 关于开发简易搜索引擎的一些总结和思考
- 关于开发简易搜索引擎的一些总结和思考
- Android开发中关于获取当前Activity的一些思考
- 关于开发的一些思考
- 开发购物网站的第一步--关于制作前的一些思考
- 关于软件开发团队的一些思考
- [转]关于项目管理、软件开发的一些思考
- 关于软件开发团队的一些思考
- (转)看了一些ASP.NET MVC开源项目后的一些想法,关于ASP.NET MVC+Repository+Service架构的一些思考
- 关于软件开发团队的一些思考
- 关于网民结构调整的一些思考
- 转:关于软件开发的一些常识和思考
- 关于开发环境的一些思考
- Android开发中关于获取当前Activity的一些思考
- 关于iOS中MVC和MVVM的一些思考
- Go游戏服务器开发的一些思考(三十二):关于无缝世界的一些思考
- 关于软件开发的一些常识和思考