Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [Symfony] Problem z łączeniem dwóch tabel
vonski
post
Post #1





Grupa: Zarejestrowani
Postów: 292
Pomógł: 89
Dołączył: 27.12.2006
Skąd: Warszawa

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


Witam.
Na początek zaznaczę, że przygodę z Symfony rozpocząłem bardzo niedawno. I niestety już napotkałem problem, mianowicie... proste złączenie tabel (IMG:style_emoticons/default/smile.gif)

Mam takie tabele:

rider:
rider_id
rider_name
nation_id
...

nation:
id
name
flag

I chciałem złączyć te tabele używając id danego państwa (nation.id i rider.nation_id). Może mi ktoś wytłumaczyć jak to ma być zrobione? (IMG:style_emoticons/default/smile.gif)
Próbowałem tak:

  1. static public function getLatest()
  2. {
  3. $criteria = new Criteria();
  4. $criteria->addJoin(RiderPeer::NATION_ID, NationPeer::ID, Criteria::LEFT_JOIN);
  5.  
  6. return self::doSelect($criteria);
  7. }


Funkcja getLatest() znajduje się w pliku RiderPeer.php .. niestety nie działa, tzn zapytanie się wykonuje, ale jego składnia wygląda tak:

  1. SELECT rider.ID, rider.NAME, rider.SURNAME, rider.NATION_ID, rider.BIRTH_YEAR, rider.IMG, rider.CREATED_AT FROM `rider` LEFT JOIN nation ON (rider.NATION_ID=nation.ID)


Jak to napisać, żeby po tym SELECT znalazły się jeszcze nation.ID, nation.NAME i nation.FLAG?
Dodam jeszcze, że próbowałem też pokombinować coś z ::doSelectJoinAll albo ::doSelectJoin* i... dostaję error:

"Fatal error: Call to undefined method RiderPeer::doselectjoinall() in C:\wamp\www\zuzel\lib\model\RiderPeer.php"

Też nie mam pojęcia dlaczego odwołanie do nieistniejącej metody, skoro na stronie symfony napisane jest, że ta funkcja jest od 1.0.16 a ja używam 1.2.8.


Z góry dziękuję za pomoc.

Pozdrawiam
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: 16.10.2025 - 18:21