2012-02-16 112 views
2

假設我在CakePHP應用程序中有Project模型和User模型。使用ACL我可以控制用戶是否可以訪問項目和/或ProjectsController中的特定操作。使用ACL限制CakePHP中資源ID對資源的訪問

但我想進一步去控制用戶是否被允許查看特定項目,例如,使用類似http://example.com/projects/3的URL訪問項目id = 3

這是可能與ACL,以及我必須開發額外的檢查之上呢?

謝謝!

回答

3

要限制訪問模型的特定值,您需要使用ACL以外的其他值。

最好是定義用戶和項目之間的關係,無論是包容還是獨佔。

您可能需要一個ProjectUser模型(項目和用戶中的HABTM)以及該模型中的一個簡單函數,可能是userAllowed($projectId, $userId),它檢查用戶是否有權訪問該項目。