Cakephp 当我选择特定条件时,如何为视图数据分页?

Cakephp 当我选择特定条件时,如何为视图数据分页?,cakephp,Cakephp,在index.ctp中,我可以查看客户表的所有数据详细信息。我想有一个功能,让用户选择按公司查看,当用户选择公司时,我使用javascript来了解公司id, 但我不知道如何按公司id对数据视图进行排序 我只想在index.ctp中列出数据当用户选择公司查看时,所有数据都会有自己的公司,只有少数公司提供。 有没有创意来创造这个动作??通过刷新页面,我可以在index.ctp中查看新的数据列表。谢谢 我是cakephp新手 如果使用,您将能够方便地允许用户对数据进行排序。默认情况下,数据在服务器上

在index.ctp中,我可以查看客户表的所有数据详细信息。我想有一个功能,让用户选择按公司查看,当用户选择公司时,我使用javascript来了解公司id, 但我不知道如何按公司id对数据视图进行排序

我只想在index.ctp中列出数据当用户选择公司查看时,所有数据都会有自己的公司,只有少数公司提供。 有没有创意来创造这个动作??通过刷新页面,我可以在index.ctp中查看新的数据列表。谢谢

我是cakephp新手

如果使用,您将能够方便地允许用户对数据进行排序。默认情况下,数据在服务器上进行排序(在数据源级别),因此当单击排序链接时,页面将重新加载

<?php echo $paginator->sort('Company', 'company'); ?>

如果您希望使用JavaScript获得更动态的体验,也可以使用分页,但需要更多的代码。手册中有关于的信息,还有一篇关于面包店的文章


如果这不是您想要的,您能澄清一下吗?

如果您真正想要的是过滤(而不是排序)您的数据,您也可以使用控制器的paginate方法/vars:

   $this->Model->recursive = 0;
   $data = $this->paginate('Model', array('OR' => array(array('Model.type' => 1), array('Model.subtype LIKE' => '%SOMETHING%'))));
   $this->set('data', $data);
这将创建如下查询:

   WHERE ((`Model`.`type` = 1) OR (`Model`.`subtype` LIKE '%SOMETHING%')
您还可以将条件、排序等直接从控制器传递到paginate(),如下所示:

   $this->paginate['conditions'] = array('Recipe.title LIKE' => 'a%');
   $this->paginate['limit'] = 10;

如果javascript很难实现它,有没有想过使用其他代码来实现我想要的功能?我只想对索引页面中显示的相同类型的数据进行排序,这些数据可能具有相同类型的公司。当用户选择要在索引页面中查看的公司数据类型时。我不知道该怎么做。