Pisząc swój pierwszy półprofesjonalny serwisik (czytaj: taki, który wyjdzie oficjalnie na świat ;) ) w Symfony, natknąłem się na problem administracji użytkownikami, którzy powinni należeć tylko i wyłącznie do jednej grupy.

Mamy sobie aplikację z użytkownikami zarządzanymi przez sfGuarda. Każdy użytkownik powinien należeć tylko do jednej z wybranych grup, zatem odmiennie od domyślnej konfiguracji sfGuarda, który zezwala na łączenie użytkownika z wieloma grupami (relacje m-n).

Można spróbować pisania metod setGroup(), która usunie poprzedni związek sfGuardUserGroup i utworzy nowy, ale to raczej obchodzenie problemu, sprawiające więcej problemów niż pożytku.

Czytaj dalej...