CakePHP 2.0 AclExtras在shell中打印HTML代码

时间:2012-08-17 04:02:29

标签: cakephp cakephp-2.0 acl

我正在尝试根据2.0书中的教程设置ACL,但是当我运行时我得到HTML脚本

./Console/cake AclExtras.AclExtras aco_sync

这里发帖真的很长。在我的bootstrap.php文件中,我有

CakePlugin::load('AclExtras');

在我的AppController中我有

App::uses('Controller', 'Controller');

我还试图在没有输入插件的情况下去看看会发生什么,当我做这样的事情时:

$this->Acl->allow($group, 'controllers');

我收到此错误:

Warning (512): DbAcl::allow() - Invalid node [CORE\Cake\Model\Permission.php, line 176]

有关如何使这项工作的任何建议?

提前致谢

1 个答案:

答案 0 :(得分:0)

  1. 确保您的ACO表填充了至少一个条目'controllers',没有parent_id。
  2. 确保allow的第一个参数是有效参数,在您的情况下,$group应该是一个Group对象,使用正确的组ID进行设置。 E.g。

    $group = $this->User->Group;
    $group->id = 1;
    
  3. (如果你只将$group设置为整数,你肯定会得到你得到的错误,所以一定要检查一下!)

    1. 确保第二个参数是有效参数(例如,有效别名)。