【问题标题】:Cakephp: grant acl permission using cliCakephp:使用 cli 授予 acl 权限
【发布时间】:2011-02-21 01:59:54
【问题描述】:

我正在尝试使用 cli 向组(用户)授予编辑用户权限。

这是 aros 表中的相关行:

id  parent_id   model   foreign_key     alias   lft     rght

3       NULL      Group     3              NULL     13      22

这是来自 acos 表的相关行:

id  parent_id   model   foreign_key     alias   lft     rght
27      1          NULL     NULL            Users   68      89
31    27         NULL     NULL            edit    75       76

我尝试使用此命令:

cake acl grant users 用户编辑

但我收到此错误消息:

PHP 警告:DbAcl::allow() - 第 361 行 /var/www/html/cakepf/cake/libs/controller/components/acl.php 中的无效节点

警告:DbAcl::allow() - 第 361 行 /var/www/html/cakepf/cake/libs/controller/components/acl.php 中的无效节点 未授予权限。

任何有关如何完成此任务的帮助将不胜感激。

【问题讨论】:

    标签: cakephp


    【解决方案1】:

    Cake 以 invalid node 错误响应:它找不到您引用的节点。当您查看正在执行的命令时,您正在尝试访问节点users。 Cake 应该如何知道这是哪个节点? aros 表中节点的别名列为空。

    解决方案:在 aros 表中使用正确的别名。您还可以使用 cake acl view arocake acl view aco 查看您的 ACL 表对 Cake 的外观。

    【讨论】:

    • 所以为了使用acl cli命令,我必须首先为所有东西定义别名?不能通过主键引用节点?
    • 我不知道,因为我通常不使用 CLI 来编辑 ACL,但我发现你也可以使用 Cake 在使用 cake acl view aro 时为节点提供的名称.在这种特定情况下,我相信那将是Group.3
    • 你是直接插入到 aros_acos 表中吗?
    • 我实际上是在使用an ACL updating script from Mark Story 来自动更新我的 ACO 和 ARO 表(我只在组上使用 ARO 表,即我不在我的站点中使用用户特定权限)。
    • 是的,如果您在 aros 表中没有别名,./Console/cake acl grant Group.1 控制器将是有效的
    猜你喜欢
    • 2022-10-08
    • 2011-09-02
    • 2011-11-20
    • 2014-02-18
    • 2011-11-08
    • 1970-01-01
    • 2023-03-11
    • 1970-01-01
    相关资源
    最近更新 更多