Kohana прави страницирането (pagination) повече от лесно

За разлика от CodeIgniter в Kohana страницирането работи и то работи повече от добре. Реализацията му е много елементарна и може да се сравни с пиене на кафе с красива девойка :) Звучи много сладко нали?

Ами то си е точно такова. В момента работя по един уеб сайт за имоти, който има доста голяма функционалност и ми се наложи за пръв път да използвам страницирането, като очаквах нещата да станат доста тегави и мъчни, но за радост Kohanци отново ми поднасят голяма и приятна изненада.

Ето и един прост пример, който показва колко лесно може да я използвате:

[code lang="php"]

class Comments_Controller extends Controller {

protected $pagination;

...

public function index()

{

$num_per_page = 10;

$view = new View('admin/layout');

$view->include = 'comments/view';

$view->heading = 'Коментари';

$this->pagination = new Pagination(array(

'base_url' => 'admin/comments/index/',

'uri_segment' => 'index',

'total_items' => ORM::factory('comment')->select('*')->count_all(),

'items_per_page' => $num_per_page,

'style' => 'digg'

));

$offset = $this->pagination->sql_offset;

$view->comments = ORM::factory('comment')->select('*')->orderby('id', 'desc')->find_all($num_per_page, $offset);

$view->render(TRUE);

}

}

[/code]

Какво трябва да отбележим тук? Първо, че плъгина за оцветяване не ми работи :) Това – ок! Но реално какво правим в горепосочения код – избираме си колко коментара искаме да имаме на страница, след което зареждаме пагинейшън библиотеката, избираме base_url, който в случая е admin/comments/index, избираме кой сегмент ще бъде определящия, като в случая сме избрали да е този след index, дори няма нужда да броите кой подред се пада, надолу ясно като style-a е дигг, нещо нестандартно на пръв поглед, но Kohana ни предоставя възможност да си изберем стил на показване! Съвсем лесно може да си направите и ваш собствен такъв. Беше лесно нали? И още как!

И какво все още ви спира да пробвате Kohana? :)

Повече за  страницирането тук.

Между другото Kohana 3.0 се задава с пълна сила, като може да очаквате пренаписване на целия код, което съответно ще означава огромно подобравяне на скоростта, нещо, което в предишните си публикации казах, че очаквам и то вече е факт! Хелпърите и библиотеките вече стават класове. И най-важното – HMVC design pattern :)

Мога да кажа единствено Zend да треперят, задава се истински конкурент!

Прочетете още:

  1. No Input File Specified! – Kohana
  2. Не лошата алтернатива Kohana


Дискусия

  1. Марио Пешев 19 август 2009

    Comment Arrow

    ORM::factory(‘comment’)->select(‘*’)->orderby(‘id’, ‘desc’)->find_all($num_per_page, $offset)

    Като изключа find_all функцията, другото изобщо не ми прилича на ORM, а по-скоро на ActiveRecord-а на Игнайтера. Иначе ще пусна просто демо с таблицата и страницирането на CI – в единия проект го ползвам и е пушка, пробвах го със 70 продукта и работи кадърно :)

    ОтговорОтговор

Публикувай коментар (dofollow)

  • Author Avatar

    ТИ :)