2011-01-17 3 views
0

У меня есть отношение «многие ко многим» между двумя таблицами.Вопрос о многих отношениях: полная итерация

Я хотел бы показать элементы таблицы с соответствующими элементами другой таблицы.

Например:

user1->group2 
     group5 
user2->group1 
     group3 
     group4 
... 

В простой и умный способ, конечно. Я использую php, symfony и propel 1.4.

Любой совет или учебник?

EDIT:

Я использовал присоединиться и я получаю объекты из таблицы обмена, так что если я перебирать его я получаю:

user1->group2 
user1->group5 
user2->group1 
user2->group3 
user2->group4 

Но мне интересно, как я мог бы получить группу объекты из пользовательских объектов.

С уважением

Javi

ответ

0

Если вы определили relationshop между user и вашей group таблицей в схеме поступательного движения, то User объектов будут иметь метод getGroups(). Вызовите это из одного User, и вы получите список всех групп, к которым этот пользователь присоединился. Вы можете сделать это, не вступая в объединение, но он будет менее эффективным, так как он сделает один дополнительный запрос к базе данных для каждого пользователя. Если вы выполняете соединение при запросе для пользователей, группы также будут кэшироваться.

1

Ну .. будет простой join хватает?

+1

Вы уверены, что он читает немецкий? ;) – Vache

+0

+1 thx fixed;) –

+0

Привет, я отредактировал его, возможно, теперь более полный. – ziiweb