Ngu ngơ học làm web (x7) - CakePHP2 - Bài tập Phân trang

Phần x7. CakePHP2 – Bài tập Phân trang


Xem (clip số 13 – chickenrainshop):

Bài tập về phân trang, thực hiện phân trang cho trang hiển thị các tác giả.


Vào Config/routes.php, thêm vào dòng mã sau:

Router::connect('/tac-gia', ['controller' => 'writers', 'action' => 'index']);

2. Hiển thị nội dung và phân trang

Hàm index trong controller Writers

public function index() {
                        $this->paginate=[
                                    'fields' => ['name', 'slug'],
                                    'limit' => 5,
                                    'order' => ['name' => 'ASC'],
                                    'paramType' => 'querystring'
                        ];
                        $writers = $this->paginate();
                        $this->set('writers', $writers);
            }

Tập tin index.ctp trong view Writers

<div class="writers index">
            <h2><?php echo __('Các tác giả'); ?></h2>
            <h4><?php echo $this->paginator->sort('name', 'Xếp theo thứ tự ngược lại'); ?></h4>
            <?php foreach($writers as $writer): ?>
            <?php echo $writer['Writer']['name'] ?> <br>
            <?php endforeach ?>
            <br>
            <hr>
            <br>
            <p>
                        <?php echo $this->paginator->counter('Trang {:page}/{:pages}, hiển thị {:current} tác giả trong tổng số {:count} tác giả.'); ?> <br>
                        <?php echo $this->paginator->prev('Quay lại'); ?>
                        <?php echo $this->paginator->numbers([
                                    'separator' => ' - ',
                                    'before' => '| ',
                                    'after' => ' |'
                                    ]); ?>
                        <?php echo $this->paginator->next('Kế tiếp'); ?>
            </p>

</div>
-----------
Cập nhật 25/4/2017
-----------
Xem thêm:
Tổng hợp các bài viết về Ngu ngơ học làm web