Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [Symfony][Propel] 2 joiny do tej samej tabeli
Forum PHP.pl > Forum > PHP
kulmen
Mam problem z wywołaniem dla obiektu funkcji doSelectJoinAll. Wywala mi błąd: Syntax error or access violation: 1066 Not unique table/alias: 'user'

Mój uproszczony model wygląda następująco:

news:
.....
author: { type: integer, foreignTable: user, phpName: Author, foreignReference: id }
updated_by: { type: integer, foreignTable: user, phpName: UpdatedBy, foreignReference: id }

user:
id:
nick:
pass:
.....

Czyli mam podwójnego joina do tej samej tabeli. Niby znalazłem odpowiedź co jest nie tak. Wygląda na to, że jest (lub był) to błąd w propelu: http://www.propelorm.org/ticket/438. Ale prawdę mówiąc nieco pogubiłem się w propel'owym bug trackerze i de facto rodzi on więcej pytań niż pomaga. Stąd moje pytania:

1. Czy mam rozumieć, że ten błąd nie został i nie zostanie poprawiony w wersji 1.3?
2. W której wersji mogę się spodziewać, że tego błędu już nie będzie?
3. Czy być może jednak w wersji 1.3 jest to osiągalne a ja coś schrzaniłem z modelem?
4. Jak ewentualnie obejść ten problem w wersji 1.3 korzystając z obiektu Criteria aby uzyskać gotowy potraktowany hydrate'em object?
jaro87
>1. Czy mam rozumieć, że ten błąd nie został i nie zostanie poprawiony w wersji 1.3?
Dokładnie.

>2. W której wersji mogę się spodziewać, że tego błędu już nie będzie?
Z Twojego linku wynika, że poprawili to w wersji 1.5

>3. Czy być może jednak w wersji 1.3 jest to osiągalne a ja coś schrzaniłem z modelem?
W 1.3 musisz jakoś pokombinować. Pogooglaj, przeczytaj np. http://compzone.org/art-Symfony+&+Prop...+tabeli-64.html

4. Jak ewentualnie obejść ten problem w wersji 1.3 korzystając z obiektu Criteria aby uzyskać gotowy potraktowany hydrate'em object?
Zawsze możesz napisać własną metodę hydrate która zrobi to co będziesz chciałsmile.gif
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.