Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [Symfony]problem z zapytaniem
harvesterix
post
Post #1





Grupa: Zarejestrowani
Postów: 74
Pomógł: 0
Dołączył: 17.09.2009

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


Zacząłem zabawę z Doctrine (wcześniej używałem propela) i mam problem z takim zapytaniem:

  1. $q = $this->createQuery()
  2. ->from('Strona s, Strona s1')
  3. ->where('s.id_rodzica = s1.id')
  4. ->andWhere('s.tytul_slug = ?', $adres[1])
  5. ->andWhere('s1.tytul_slug = ?', $adres[0]);


Dostaję error o następującej treści:
"Strona" with an alias of "s1" in your query does not reference the parent component it is related to.

Szukam w googlu rozwiązania i nic nie mogę znaleźć, to znaczy jest trochę wątków na ten temat ale wszędzie jest mowa o złej relacji między tabelami a ja mam samozłączenie.
Go to the top of the page
+Quote Post
puc
post
Post #2





Grupa: Zarejestrowani
Postów: 32
Pomógł: 2
Dołączył: 4.12.2004

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


jeżeli używasz $this->createQuery to rozumiem że wywołujesz to w klasie StronaTable.class.php, wiec metoda 'from' jest zbędna. Spróbuj czegoś takiego:

  1. $q = $this->createQuery('s')
  2. ->innerJoin('s.Strona s1 ON s.id_rodzica=s1.id')
  3. ->where('s.tytul_slug = ?', $adres[1])
  4. ->andWhere('s1.tytul_slug = ?', $adres[0]);


Nie testowałem tego, nie wiem jak się zachowa doctrine przy złączeniu dwóch tych samych tabel, ale nie sądzę aby to był problem.

Ten post edytował puc 9.03.2011, 10:58:25
Go to the top of the page
+Quote Post
harvesterix
post
Post #3





Grupa: Zarejestrowani
Postów: 74
Pomógł: 0
Dołączył: 17.09.2009

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


próbowałem już z joinem co prawda trochę inaczej ale próbowałem w każdym razie z twoim zapytaniem wypluwa:
"Unknown relation alias Strona"
Go to the top of the page
+Quote Post
puc
post
Post #4





Grupa: Zarejestrowani
Postów: 32
Pomógł: 2
Dołączył: 4.12.2004

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


rozumiem że masz zrobioną relację Strona->Strona (foreign key po id_dodzica->id)?
Go to the top of the page
+Quote Post

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: 22.08.2025 - 17:10