I had to do this, and what worked was something like this: $contact = $this->Contacts; $this->paginate = [ 'contain' => ['Histories' => [ 'Events', 'Users', 'Linkups', 'Units' ] ],
'sortWhitelist' => [ 'Histories.Events.name','Histories.Users.username' ] ]; $this->set('contact', $this->paginate($contact)); If you're doing pagination on associated tables, you need to specify a whitelist of columns to sort on. Then, in the template, you'll need to specify the columns you're paginating. EG: echo $this->Paginator->sort('Histories.Events.name', 'Events'); On Thursday, October 9, 2014 11:35:43 AM UTC+1, Radharadhya Dasa wrote: > > Hi, > > I have this > > public function view($id = null) { > $this->paginate = [ > 'contain' => ['Histories' => [ > 'Events', 'Users', 'Linkups', 'Units' > ] > ] > ]; > $contact = $this->Contacts->get($id, [ > 'contain' => ['Zips', 'Contactsources', 'Groups', 'Linkups', > 'Users', 'Histories' => [ > > 'Events', 'Users', > > 'Linkups', 'Units' > > ]] > ]); > $this->set('contact', $this->paginate($contact)); > } > > > This gives me this error message: > *Error: * Call to undefined method App\Model\Entity\Contact::alias() > *File* > /home/rrd/public_html/sanga/vendor/cakephp/cakephp/src/Controller/Component/PaginatorComponent.php > > > *Line: * 151 > > Why? > > What I want is to have a table with history data what is paginated. > > rrd > > -- Like Us on FaceBook https://www.facebook.com/CakePHP Find us on Twitter http://twitter.com/CakePHP --- You received this message because you are subscribed to the Google Groups "CakePHP" group. To unsubscribe from this group and stop receiving emails from it, send an email to cake-php+unsubscr...@googlegroups.com. To post to this group, send email to cake-php@googlegroups.com. Visit this group at http://groups.google.com/group/cake-php. For more options, visit https://groups.google.com/d/optout.