2013-11-25 3 views
0

сортировать мои данные в контроллере:Отключить сортировать пагинация в виде CakePHP

$this->paginate = array(
    'limit' => 40, 
    'page' => $this->request->params['page'], 
    'group' => 'movie_id', 
    'order' => array('start_year' => 'desc', 'votes_count' => 'asc', 'premiere' => 'desc'), 
); 

И когда я печатаю пагинацию в представлении меня URLs:

/pages/newest/page:7/sort:Post.start_year/direction:desc 

Я не хочу показывать это: сортировать: Post.start_year/направление: убывание

В свете:

<?php echo $this->Paginator->first('<< '); ?> 
<?php echo $this->Paginator->numbers(array('modulus' => 8)); ?> 
<?php echo $this->Paginator->last(' >>'); ?> 

Как отключить заказ в URL-адресах?

+0

Просто не разрешая разбиение на страницы для этих полей. Удалите эти ссылки с вашего вида. – mark

ответ

0

Вы должны просто ничего подобного, что написать:

<?php echo $this->Paginator->sort('User.name', 'Name');?> 

В вашей ситуации это должно быть что-то вроде этого:

<?php echo $this->Paginator->sort('Post.start', 'your column name');?> 
+0

Но у меня есть только это: Paginator-> first ('<< '); ?> Paginator-> numbers (array (' module '=> 8)); ?> Paginator-> last ('>>');?> – mitch

+0

Тогда как у вас получился такой url? –

+0

Эта строка: 'order' => array ('start_year '=>' desc ',' vote_count '=>' asc ',' premiere '=>' desc '), делает такие URL-адреса – mitch

0

Написать заказ Постулаты, без => символа между полем и сортировки типа, в вашем случае:

'order' => array('start_year desc, votes_count asc, premiere desc'), 

Это решение e вопрос.

Смежные вопросы