Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Kohana] paginacja [solved]
nmts
post
Post #1





Grupa: Zarejestrowani
Postów: 283
Pomógł: 34
Dołączył: 21.03.2008

Ostrzeżenie: (0%)
-----


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.

Ten post edytował nmts 23.06.2010, 21:13:23
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 25.12.2025 - 03:28