Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [ZF] Jak przefiltrować rekordy, które są w relacji
amii
post
Post #1





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


Mam dwie klasy modeli połączone relację 1:n
W klasie nadrzędnej (do, której może należeć n-rekordów) mam napisaną dla pojedynczego rekordu taką metodę, zwracającą n-rekordów połączonych:

  1.  
  2. class Application_Model_DbTable_Trainings_Row extends Zend_Db_Table_Row
  3. {
  4.  
  5. public function getInstance($cond = NULL) {
  6. if ($cond !== NULL) {
  7. $m = new Application_Model_DbTable_TrainingInstance();
  8. $s = $m->select()->where('date_start > ?', new Zend_Db_Expr('CURDATE()'))->order('date_start ASC');
  9. return $this->findDependentRowset('Application_Model_DbTable_TrainingInstance', null, null, $s);
  10. }
  11. return $this->findDependentRowset('Application_Model_DbTable_TrainingInstance');
  12. }
  13.  
  14. }
  15.  


Niestety po wywołaniu, rekordy nie są filtrowane, tzn. dostaje wszystkie. Mogę to co w prawdzie przefiltrować warunkiem w widoku ale na pewno nie jest to optymalne.

  1. $instances = $v1->getInstance(true);
  2. var_dump($instances);


--------------------
gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet.
Zarabianie bez wysiłku na domenach bez ruchu: prolink.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 2)
k_@_m_i_l
post
Post #2





Grupa: Zarejestrowani
Postów: 349
Pomógł: 72
Dołączył: 22.01.2008
Skąd: Wadowice/Oświęcim

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


Zobacz, funkcja findDependentRowset wygląda tak:
  1. public function findDependentRowset($dependentTable, $ruleKey = null, Zend_Db_Table_Select $select = null)

Ty przekazałeś o jednego null-a za dużo.
Cytat(amii @ 12.12.2012, 11:04:47 ) *
  1. return $this->findDependentRowset('Application_Model_DbTable_TrainingInstance', null, null, $s);


Spróbuj tak, powinno pomóc:
  1. return $this->findDependentRowset('Application_Model_DbTable_TrainingInstance', null, $s);



--------------------
"PHP to człowiek. MySQL to również człowiek."
Go to the top of the page
+Quote Post
amii
post
Post #3





Grupa: Zarejestrowani
Postów: 728
Pomógł: 76
Dołączył: 12.06.2009

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


Faktycznie aż mi głupio, że czegoś takiego nie zauważyłem ale tak to jest jak się kopiuje kod, który zakładam że jest dobry


--------------------
gry flash online
Dobry hosting i tanie odnowienia domen firma: masternet.
Zarabianie bez wysiłku na domenach bez ruchu: prolink.
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 20.08.2025 - 04:53