2012-05-24 2 views
0

ACL을 사용해야하는 응용 프로그램을 구축 중입니다. 컨트롤러 중 하나에서 작업의 사용 권한을 확인하려고합니다.CakePhp ACL 확인은 응용 프로그램에서는 실패하지만 케이크 콘솔에서는 실패합니다.

./cake acl check Group.83 controllers all 
Group.83 is allowed. 

을하지만, 내 컨트롤러에서 나는 true를 돌려이 코드를 사용할 때 : '(

$ checkPerm = $ this-> Acl-> 확인이 작동 내 케이크 콘솔 코드입니다 Group.83 ','controllers ','all ');

Warning (512): DbAcl::check() - Failed ARO/ACO node lookup in permissions check. Node references: 
Aro: Group.83 
Aco: controllers [CORE/cake/libs/controller/components/acl.php, line 273] 

내 ACL가 올바르게 설정 것을 알고, 그렇지 않으면 케이크 콘솔 명령이 실패했을 :

나는이 오류가 발생합니다. 내 컨트롤러에서 그 무언가, 나는 생각하지만, 나는이 오류의 원인이 될 수 있는지 모르겠습니다. 어떤 아이디어?

답변

1

셸은 배열이나 슬래시가 작동하지 않기 때문에 도트 구문을 사용합니다. 그런 다음 쉘은 배열 구문을 사용하는 구성 요소에서이를 추출하여 읽을 수있게 만듭니다. 수표를 다음으로 변경하십시오 :

$checkPerm = $this->Acl->check(array(
    'model' => 'Group', 
    'foreign_key' => 83 
), 'controllers', 'all'); 

그리고 그것을 처리해야합니다!

+0

그래,이 사실을 깨달았습니다. 고맙습니다. – user1152226

관련 문제