Witam,

przesiadlem sie na wersje Zenda >1.10 i mam maly problem. Mam dwie tabele o nazwach tabelaA oraz tabelaB i trzecia tabele laczaca dwie pierwsze - tab. Utworzylem dwa modele TabelaA oraz TabelaB. Czasem przydaloby sie wykonac w modelu np. TabelaA zapytanie do tabeli pomocniczej - po co mnozyc niepotrzebnie modele - tabela pomocnicza sluzy udostepnieniu funkcjonalnosci relacji wiele-wiele. Zapytanie do tabeli pomocniczej realizuje ponizszy kod:

Kod
$select = $this->select()
    ->from('tab','id')
    ->where($this->quoteinto('numer = ?', $klasa))
    ->where($this->quoteinto('oddzial = ?', $oddzial));
        
$result = $this->fetchRow($select);


Po wykonaniu w przegladarce otrzymuje:

Cytat
Warning: Select query cannot join with another table in C:\wamp\www\inzynierka\library\Zend\Db\Select.php on line 1345


Nijakiego joina w moim zapytaniu nie widze. Dorzucilem sobie wiec pomiedzy tworzenie zapytania ($select) a wykonywanie ($result) taki kod:
Kod
echo $select; die;


otrzymalem:

Cytat
SELECT 'id'


Kiedy podmienie nazwe tabeli, do ktorej wysylane jest zapytanie na nazwe zgodna z nazwa modelu - wtedy wszystko ladnie dziala (zakladajac ze kolumny w tabelach sa takie same - ale to zalozenie czysto abstrakcyjne).

Pytanie - co robie zle? Nie chce robic kolejnego modelu, bo w projekcie sporo bedzie tych laczacych tabel i nie chce niepotrzebnie mnozyc bytow.

SOLVED: zamiast $this->select() nalezalo uzyc $this->getAdapter()->select()