Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/292.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php Kohana 3.2中分页的最小完整示例是什么?_Php_Pagination_Kohana 3.2 - Fatal编程技术网

Php Kohana 3.2中分页的最小完整示例是什么?

Php Kohana 3.2中分页的最小完整示例是什么?,php,pagination,kohana-3.2,Php,Pagination,Kohana 3.2,我在Kohana3.2中找到了很多关于分页的信息,但大部分信息分散在论坛评论和博客文章中,没有一个完整的来源可供参考 (注意:我打算自己回答这个问题)分页最初在Kohana 3.2中不起作用/不受支持。幸运的是,有人已经更新了模块,您可以在上获得代码,这对我来说很有用: 从下载分页模块(分页已从Kohana 3.2中删除,因此这是一个经过调整的模块) 在模块/分页中安装模块 在bootstrap.php中添加模块: Kohana::modules(array( // ... other

我在Kohana3.2中找到了很多关于分页的信息,但大部分信息分散在论坛评论和博客文章中,没有一个完整的来源可供参考


(注意:我打算自己回答这个问题)

分页最初在Kohana 3.2中不起作用/不受支持。幸运的是,有人已经更新了模块,您可以在

上获得代码,这对我来说很有用:

  • 从下载分页模块(分页已从Kohana 3.2中删除,因此这是一个经过调整的模块)
  • 在模块/分页中安装模块
  • 在bootstrap.php中添加模块:

    Kohana::modules(array(
        // ... other modules ...
        'pagination' => MODPATH.'pagination'
    ));
    
  • 将配置文件从modules/pagination/config/pagination.php复制到application/config/pagination.php

  • 将以下操作添加到控制器:

     public function action_index() {
         // Go to first page by default
         $this->request->redirect('yourcontroller/page/?page=1');
     }
    
     public function action_page() {
         $orm = orm::factory('your_orm');
    
         $pagination = Pagination::factory(array(
             'total_items' => $orm->count_all(),
             'items_per_page' => 20,
             )
         );
    
         // Pass controller and action names explicitly to $pagination object
         $pagination->route_params(array('controller' => $this->request->controller(), 'action' => $this->request->action())); 
         // Get data
         $data = $orm->offset($pagination->offset)->limit($pagination->items_per_page)->find_all()->as_array();
         // Pass data and validation object to view
         echo View::factory('yourview/page', array('data' => $data, 'pagination' => $pagination));
     }
    
  • 按如下方式创建视图/页面:

    <?php
    foreach($data as $item) {
        // ...put code to list items here 
    }
    
    // Show links
    echo $pagination;
    

    这不是一个为我搜索的网站类型示例。请看一看常见问题。@hakre我打算自己回答这个问题,因为我花了几个小时在这个问题上,当时我认为我可以在几分钟内解决它。这就是为什么我没有在问题中添加更多细节。很抱歉,如果看起来我希望人们为我做这项工作。最好使用shadowhand的分页模块,因为他非正式地支持它: