【问题标题】:cakePHP store pagination parameters and recall on next visitcakePHP 存储分页参数并在下次访问时调用
【发布时间】:2012-04-26 23:04:15
【问题描述】:

我正在尝试存储寻呼请求的状态。我希望用户在离开带有 cakephp 分页组件的页面时(例如编辑),返回时返回到使用分页组件访问的最后一个页面。

因此,如果用户访问了http://www.site.com/users/view/page:3,并且离开了该页面,则必须返回到同一页面。我尝试了一个我上网的分页召回组件,但没有设法让它工作。我正在使用 cakePHP 2.0

【问题讨论】:

  • 您是要永久存储它还是仅在会话期间存储它。即,当他们注销并重新登录时,您是否要将他们带到他们的最后一个分页页面?
  • 不是永久的,会话很好。我已经设法通过会话存储排序,并且可以成功地回忆起它。有什么方法可以设置分页器显示哪个“页面”,换句话说,如果 url 显示 page:3,但我将属性设置为 page => 4,它会显示第 4 页?这样我就可以纯粹地检查最后一页是什么,将其存储为会话并在需要时调用它。
  • 可以,只要修改请求对象的参数即可。
  • 嘿,杰里米,我试图通过在我的控制器中执行 $this->params["named"]["page"] 来修改值,但我得到一个“间接修改 CakeRequest 的重载元素没有效果”
  • 修改请求对象,如$this->request->params['named']['page']

标签: cakephp pagination


【解决方案1】:

要修改分页器使用的参数,您需要在调用$this->Paginator->paginate() 之前修改控制器上的CakeRequest 对象。

例如,如果用户浏览到/users/index/page:3,而您想将其发送到第 4 页,请在控制器中修改请求,如下所示:

$this->request->params['named']['page'] = 4;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-21
    • 1970-01-01
    • 2014-08-06
    • 1970-01-01
    相关资源
    最近更新 更多