我创建了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种类型的用户角色。
答案 0 :(得分:0)
我认为您必须将此代码放在用户模型中:
public $actsAs = array('Acl' => array('type' => 'requester', 'enabled' => false));