Cakephp 2.0 ACL实现问题

时间:2012-08-13 07:30:33

标签: cakephp acl

我创建了acos,aros和aros_acos表。使用CakePlugin :: load('AclExtras')在“acos”表中插入的值。此外,在添加Group时自动在“aros”表中添加值(在我的情况下,这是UserRole)。

此外,当我在任何组中添加用户时(在我的情况下为UserRole)。值将按预期插入“aros”表和“user”表中。

另外,我在“aros_acos”表中设置了权限。

但是,当我尝试使用任何添加的用户登录时,我收到以下错误: -

AclNode :: node() - 找不到由“Array([Aro0.model] => User [Aro0.foreign_key] =>)”

标识的Aro节点

打印查询后: -

"SELECT `Aro`.`id`, `Aro`.`parent_id`, `Aro`.`model`, `Aro`.`foreign_key`, `Aro`.`alias` FROM `lms_new`.`aros` AS `Aro` LEFT JOIN `lms_new`.`aros` AS `Aro0` ON (`Aro`.`lft` <= `Aro0`.`lft` AND `Aro`.`rght` >= `Aro0`.`rght`) WHERE `Aro0`.`model` = 'User' AND `Aro0`.`foreign_key` IS NULL ORDER BY `Aro`.`lft` DESC"

面对路障,因为我无法调试此问题。请建议如何继续。

我的应用程序中有4种类型的用户角色。

1 个答案:

答案 0 :(得分:0)

我认为您必须将此代码放在用户模型中:

public $actsAs = array('Acl' => array('type' => 'requester', 'enabled' => false));