cakephp의 페이지 매김은 여전히 매우 간단합니다.
1 데이터 테이블
CREATE TABLE IF NOT EXISTS `users` ( `id` int(11) NOT NULL AUTO_INCREMENT, `firstname` varchar(32) NOT NULL, `lastname` varchar(32) NOT NULL, `email` varchar(32) NOT NULL, `username` varchar(32) NOT NULL, `password` varchar(32) NOT NULL, PRIMARY KEY (`id`) )
2 app/models/user.php에서 코드는 다음과 같습니다. is:
<?php class User extends AppModel{ var $name = 'User'; ?>
app/controllers/users_controller.php의 3
function view_users(){ $this->paginate = array( 'limit' => 2 ); //users用于在前端页面中显示 $this->set('users', $this->paginate('User')); }
페이지 템플릿 파일의 4
app/views/users/view_users .ctp
<?php echo "<div class='page-title'>Users</div>"; //title //this 'add new user' button will be used for the next tutorial echo "<div style='float:right;'>"; $url = "add/"; echo $form->button('Add New User', array('onclick' => "location.href='".$this->Html->url($url)."'")); echo "</div>"; echo "<div style='clear:both;'></div>"; if( sizeOf( $users ) > 0 ){ //check if there are user records returned ?> <table> <tr> <!--第一个参数是表格列的label,第一个参数是排序中实际数据库的字段--> <th style='text-align: left;'><?php echo $paginator->sort('Firstname', 'firstname'); ?></th> <th><?php echo $paginator->sort('Lastname', 'lastname'); ?></th> <th><?php echo $paginator->sort('Email', 'email'); ?></th> <th><?php echo $paginator->sort('Username', 'username'); ?></th> <th>Action</th> </tr> <tr> <?php foreach( $users as $user ){ //we wil loop through the records to DISPLAY DATA echo "<tr>"; echo "<td>"; echo "{$user['User']['firstname']}"; echo "</td>"; echo "<td>{$user['User']['lastname']}</td>"; echo "<td>{$user['User']['email']}</td>"; echo "<td>{$user['User']['username']}</td>"; echo "<td style='text-align: center;'>"; //'Edit' and 'Delete' link here will be used for our next tutorials echo $html->link('Edit', array('action'=>'edit/'.$user['User']['id']), null, null); echo " / "; echo $html->link('Delete', array('action'=>'delete/'.$user['User']['id']), null, 'Are you sure you want to delete this record?'); echo "</td>"; echo "</tr>"; } ?> </tr> </table> <?php //分页开始 echo "<div class='paging'>"; //第一页 echo $paginator->first('First'); echo " "; //前一页 if($paginator->hasPrev()){ echo $paginator->prev('<<'); } echo " "; //指定页数 echo $paginator->numbers(array('modulus' => 2)); echo " "; if($paginator->hasNext()){ echo $paginator->next('>>'); } echo " "; //最后一页 echo $paginator->last('Last'); echo "</div>"; }else{ //if there are no records found, display this echo "<div class='no-records-found'>No Users found.</div>"; } ?>