Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Pagination не передает параметр id
http://forum.kohanaframework.su/viewtopic.php?f=20&t=318
Страница 1 из 1

Автор:  Александр [ 17 авг 2012, 11:52 ]
Заголовок сообщения:  Pagination не передает параметр id

Столкнулся со следующей проблемой. Есть роут

Код:
Route::set('mainblock', '<directory>(/<controller>(/<action>(/<id>)))(/page)(/<page>)',
    array(
       'page'=>'[0-9]+',
        'directory' => '(tovars|prokat|books|yslygi|poputchik|nochleg|blago)'
    ))
   ->defaults(array(
        'controller' => 'subcat',
        'action'     => 'index',
    ));


Вот так применяю модуль в контроллере:

Код:
    $count_all = ORM::factory('product')->count_all();
   $pagination = Pagination::factory(array(
            'total_items' => $count_all,
        ))
      ->route_params(array(
        'directory' => Request::current()->directory(),
        'controller' => Request::current()->controller(),
        'action' => Request::current()->action(),
      ));



Проблема в том, что, при формировании ссылок не передается id. Т.е. если первая страница вот такая: http://127.0.0.1/kohana/tovars/subcat/index/27, то при клике на вторую страницу перехожу сюда: http://127.0.0.1/kohana/tovars/subcat/index/page/2.

Автор:  Sergey [ 19 авг 2012, 12:25 ]
Заголовок сообщения:  Re: Pagination не передает параметр id

С directory тут не всё просто..
Код:
     $pagination = Pagination::factory(array('total_items' => $total))
                  ->route_params(array(
                    'directory' => Request::current()->directory(),
                    'controller' => Request::current()->controller(),
                    'action' => Request::current()->action(),
      ));

      $users  = $user->order_by('fullname', 'ASC')->limit($pagination->items_per_page)
              ->offset($pagination->offset)->find_all();

      $content = View::factory('admin/user/list')
             ->bind('pagination', $pagination)
             ->bind('users', $users);

Страница 1 из 1 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/