2011-12-15 29 views
5

Tôi biết câu hỏi này đã được hỏi trước đây, nhưng tôi không biết nó đã được hỏi cụ thể về CakePHP 2.0.x. Tôi đã không thể tìm thấy bất kỳ thông tin nào về việc có hay không có người dùng là một phần của nhiều nhóm bây giờ có thể với thành phần ACL. Tôi không bao giờ sử dụng thành phần ACL với CakePHP 1.3.x vì nó làm tôi bối rối. Nếu bây giờ nó tốt hơn, tôi muốn sử dụng nó nên tôi không tái phát minh ra bánh xe bằng cách tự mình lăn bánh. Bất kỳ trợ giúp sẽ được đánh giá cao.CakePHP 2.0.x: ACL: Nhiều nhóm?

+0

Có thể đáng để cho nó đi và xem điều gì sẽ xảy ra? Tôi không nghĩ rằng ACL đã được cập nhật đáng kể rằng nó có thể hỗ trợ User HABTM Group nhưng tôi chưa đào sâu vào nó. –

+0

Câu hỏi thực tế là gì? Nếu có thể chỉ định nhiều nhóm cho ARO? Tôi chỉ có thể đoán điều này từ tiêu đề câu hỏi, nhưng không có câu hỏi thực tế nào được nêu ra. – Oldskool

Trả lời

0

tôi đã không kiểm tra nó hoặc sử dụng nó như thế này trước đây, nhưng tôi có thể tưởng tượng một cách:

Có một mô hình User và một mô hình Group, và User HATBM Group như ghi chú Shaz Amjad.

Tại điểm bạn đang làm kiểm soát truy cập của bạn, lấy một danh sách của tất cả các nhóm mà tài khoản thuộc về (có thể sử dụng bindModel) ..

Sau đó, một cái gì đó như:

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

Nếu $permits chứa ít nhất một true, chúng phải được cho phép.

Có thể có cách tốt hơn hoặc tự động hơn để thực hiện việc đó, nhưng tôi không thấy điều đó sẽ không hoạt động theo nguyên tắc.

Các vấn đề liên quan