请问分页代码是写在controller里面好还是Model里面好?

如题所示,放在哪里比较合适呢?尤其是当前PC和手机并行的时代,PC和手机端关于分页的参数都是相同的,但是PC端的程序要与渲染具体的页面,手机端只需要返回JSON数据。

阅读 6.5k
3 个回答

建议不要在controller 做,controller 用来做调度控制的,不要过多的逻辑代码,可以在model 做,pc 和 mobile 用两个controller ,调用同一个model,可以用参数控制。或者在model里面用2个方法,但是基础的数据查询调用同一个方法。

后端MVC框架例如SpringMVC,建议将分页代码放在一个CommonController.java里。其它需要实现分页的类继承一下这个公共类就可以使用分页。方便维护。

建议增加一个Service层 用来处理业务逻辑 而单纯的数据库逻辑交给Model
例如这是一个用户列表

public function indexAction(Request $request)
{ 
  $pagination=(new ArticleService)
              ->pagination($request);
  return $this->render('index',$pagination);
}
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进