Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Kohana] paginacja [solved]
Forum PHP.pl > Forum > PHP > Frameworki
nmts
Chcę paginację komentarzy.
Kontroler wygląda tak:

  1. function action_pokaz_nowosc($id,$title = null,$page = 1){
  2.  
  3. $this->template->content = new View("nowosc");
  4.  
  5. $publication = ORM::factory("publication",$id);
  6. $this->template->content->publication = $publication;
  7.  
  8. //echo ORM::factory("comment")->where("publication_id","=",$id)->count_all();
  9.  
  10. $this->pagination = new Pagination(
  11. array('uri_segment' => "page",
  12. 'total_items' => 9, //ORM::factory("comment")->where("publication_id","=",$id)->count_all(),
  13. 'items_per_page' => 5));
  14.  
  15. $this->template->content->paginacja = $this->pagination;


Jak można się domyślić występuje relacja publication - comments.
W modelu ustawiam limit i offset dla komentarzy w taki sposób:

  1. public function __construct() {
  2. parent::__construct();
  3. $this->limit(5);
  4. if(Request::instance()->param('page')) // jesli jest podstrona komentarzy to
  5. $this->offset((Request::instance()->param('page')-1)*5); // obliczam offset
  6. }


I wszystko jest dobrze, ale teraz nie mogę zliczyć wszystkich komentarzy za pomocą ORM. Pozostaje je zliczyć bez ORM w dodatku pobieranie w kontrolerze jest złe, czy jest inne wyjście? Można ustalać limit i offset przy pobieraniu komentarzy (ORM::factory), ale tutaj pobieram publikacje, a komentarze są automatycznie dołączane, chyba, że mogę jakoś to ustalić aby pozbyć się sztywnego ustalania w modelu(np. przy relacji w modelu publications), ale nic takiego nie znalazłem.
oidnus
Nie wiem czy dobrze zrozumiałem o co ci chodzi ale limit paginacji ustawia się w pliku konfiguracyjnym http://kerkness.ca/wiki/doku.php?id=how_to...gination_module zakładka "Using Configuration File"

nmts
Problem był dość błahy, znalazłem rozwiązanie, którego szukałem. Wystarczyło zrobić:

  1. $publication->comments->limit(5)->offset($offset)->find_all()


http://forum.kohanaframework.org/comments....3697&page=1
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.