Wiem, że to pytanie zostało zadane wcześniej, ale nie wiem, czy zostało ono zapytane o CakePHP 2.0.x. Nie mogłem znaleźć żadnych informacji o tym, czy użytkownicy mogą być częścią wielu grup, teraz jest możliwe z komponentem ACL. Nigdy nie użyłem komponentu ACL z CakePHP 1.3.x, ponieważ mi to pomieszało. Jeśli jednak teraz jest lepiej, chciałbym go użyć, więc nie wymyślę ponownie koła, wykonując własne. Każda pomoc będzie doceniona.CakePHP 2.0.x: ACL: Wiele grup?
5
A
Odpowiedz
0
nie testowałem go lub stosować go tak jak to wcześniej, ale mogę sobie wyobrazić jeden sposób:
mają User
modelu i Group
model i User HATBM Group
jak zauważa Shaz Amjad.
W momencie robisz swoją kontrolę dostępu, pobrać listę wszystkich grup, które należy użytkownik (prawdopodobnie za pomocą bindModel) ..
Wtedy coś takiego:
$permits = array();
foreach ($thisUsersGroups as $group) {
$permits[] = $this->Acl->check($group, 'myclass', 'update')
}
Jeśli $permits
zawiera co najmniej jeden true
, powinny być dozwolone.
Może być lepszy lub bardziej zautomatyzowany sposób robienia tego, ale nie widzę, co to z zasady nie powinno działać.
Może warto dać sobie spokój i zobaczyć, co się stanie? Nie sądzę, że ACL została zaktualizowana w znacznym stopniu, że może obsługiwać User HABTM Group, ale jeszcze nie zagłębiłem się w nią wystarczająco głęboko. –
Jakie jest faktyczne pytanie? Jeśli istnieje możliwość przypisania wielu grup do ARO? Mogę to tylko zgadywać z tytułu pytania, ale nie ma faktycznego pytania. – Oldskool