Bonjour,
Dans une méthode d'un controlleur je fais :
$id = $this->request->query'i'];
$d = $this->TransportTariffDetail->find('all', array(
'conditions' => array('transport_tariff_header_id' => (int)$id),
'recursive' => -1
));
$this->set('d',$d);
Je souhaiterai paginer les résultats, mais ça ne fonctionne pas lorsque je fais par exemple
<th><?php echo $this->Paginator->sort('id');?></th>
Savez vous ce que j'ai oublié ?
Merci pour votre aide
Salut,
Dans TransportTariffDetailsController, tu dois avoir :
public $paginate = array(
'conditions' => array('transport_tariff_header_id' => (int)$id),
'recursive' => -1
);
Plus loin tu as :
$d = $this->paginate('TransportTariffDetail');
$this->set('d',$d);
Ensuite tu pourras faire le sort('id'), sauf si tu es pas dans une vue de TransportTariffDetail où là il faudra taper :
echo $this->Paginator->sort('id', null, array('model' => 'TransportTariffDetail'));
A+
Alors la réponse c'est :
$this->Paginator->options(
array('convertKeys' => array(
'i','d','t','c'
)
)
);
Essai ça, mais j'avoue que j'ai pas pu testé et que la doc pour certains points précis est super mal foutu.
A+
Merci beaucoup, ça fonctionne parfaitement. Je croyais qu'il fallait faire un find avant d'utiliser le paginator :(
Par contre j'ai des paramètres dans mon URl : (i / d / t ) comment les conserver...
J'essaie ce code, ça fonctionne presque mais ça doit pas être ça :
$this->Paginator->options(array('url' => '?i=4&c=5&t=6&d=8'));