CakePHP:重新填充错误清理的acos表

时间:2015-04-02 19:16:25

标签: cakephp acl cakephp-2.3

在清除一些旧表和数据时,我们错误地清理了acos表,但没有意识到它与ACL绑定。

这是用户尝试更新其个人资料时出现的错误:

AclNode::node() - Couldn't find Aco node identified by 
"Array ( [Aco0.model] => User [Aco0.foreign_key] => xxx ) "

附件是“acos”表在擦除和重新填充后的样子 - 删除了7到63之间的user_id条目。

enter image description here

有没有办法重新填充现有“acos”表中缺少的条目?

1 个答案:

答案 0 :(得分:1)

您可以使用AclExtras插件重新同步您的ACO。 下载并安装它(有关说明,请参阅the docs),然后运行aco_sync shell操作:

cd /path/to/your/app
Console/cake AclExtras.AclExtras aco_sync

这应该重新创建任何已删除的ACO并让您重新开始运行。

还有一个web-based ACL plugin可用,为您提供方便的ACL后端,您可以在其中管理ACL altogheter(设置/查看组/权限),并通过单击"来同步您的ACO。同步动作ACO"按钮。