在按照cakephp手册上的说明操作create an ACL controlled site时,我添加了建议将其设置为“Group-Only ACL”的bindNode

//in users model
function bindNode($user) {
    return array('model' => 'Group', 'foreign_key' => $user['User']['group_id']);
}

根据that page,myaros表应该如下所示:
+----+-----------+-------+-------------+-------+------+------+
| id | parent_id | model | foreign_key | alias | lft  | rght |
+----+-----------+-------+-------------+-------+------+------+
|  1 |      NULL | Group |           1 | NULL  |    1 |    2 |
|  2 |      NULL | Group |           2 | NULL  |    3 |    4 |
|  3 |      NULL | Group |           3 | NULL  |    5 |    6 |
+----+-----------+-------+-------------+-------+------+------+

一切都很好-我的组权限似乎工作正常…等等,但是当用户被创建时,他们仍然被添加到aros表中。
是正常的吗?是否应该添加用户,而不是用于访问目的?我假设我的表看起来就像这个例子(只有组,没有用户),所以当我开始看到用户被添加时,我开始担心。

最佳答案

在用户模型中添加以下行:

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

参考:
http://cakephp.lighthouseapp.com/projects/42648/tickets/1485-bindnode-still-creating-user-model-aros

关于database - 即使在bindNode之后,CakePHP中的Aros表仍然包括Users,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6154285/

10-09 21:03