2011-12-15 23 views
5

我知道這個問題之前已經被問過了,但我不知道是否有人問到CakePHP 2.0.x的具體問題。我一直無法找到有關是否讓用戶成爲多個組的一部分的任何信息,現在可以使用ACL組件。我從來沒有在CakePHP 1.3.x中使用ACL組件,因爲它困惑了我。如果現在好一些,我想用它,所以我不會通過滾動自己來重新發明輪子。任何幫助,將不勝感激。CakePHP 2.0.x:ACL:多個組?

+0

它可能值得一試,看看會發生什麼?我不認爲ACL已經大幅更新,可以支持User HABTM Group,但我還沒有深入研究它。 – 2011-12-19 13:29:11

回答

0

我沒有測試過或使用過它這樣,但我能想象一個辦法:

擁有User模型和Group模型,User HATBM Group作爲Shaz阿姆賈德筆記。

在你做你的訪問控制點,獲取該用戶所屬的(可能使用bindModel)所有組的列表..

然後,像:

$permits = array(); 
foreach ($thisUsersGroups as $group) { 
    $permits[] = $this->Acl->check($group, 'myclass', 'update') 
} 

如果$permits包含至少一個true,他們應該被允許。

可能有更好或更自動化的方法,但我沒有看到原則上不應該發揮的作用。