2015-01-29 5 views
0

현재 3.0.0-RC1 버전의 새 CakePHP 응용 프로그램을 만들고 jasig/phpCAS 플러그인을 설치하고 사용하려고합니다. this guide, 사용 명령 프롬프트에서 다음 명령을 실행했습니다 : composer require jasig/phpcasCakePHP 3.0 플러그인 사용

정확하게 jasig/phpcas 파일을 내 응용 프로그램의 공급 업체 디렉토리에 복사하지만 가이드에서 말하는 다른 파일 중 하나는 업데이트해야합니다 /cakephp-plugins.php)도 존재하지 않습니다.

나는 플러그인에 액세스하는 데 어려움을 겪었습니다. 정적 메서드를 호출 할 수있게하려면 양식의 오류가 계속 발생합니다 : Error: Class 'App\Controller\phpCAS' not found. (오류의 정확한 디렉토리는 내가 어디에서 호출했는지에 따라 바뀝니다.)

cakephp-plugins.php 파일이 없기 때문인지, 그렇지 않은지 모르겠습니다. 플러그인을 올바르게 호출합니다. 플러그인이로드 되었다면 다음과 같이 static 메소드를 호출 할 수 있어야합니다. phpCAS::methodName()

+0

, 항상 _complete_, _exact_ 오류 메시지를 보여주세요! – ndm

+0

제안 해 주셔서 감사합니다. 나는 그것이 문자 그대로 오류를 표시하기 때문에 'Class ___ not found'라는 단 한가지가 있기 때문에 포함시키지 않았지만 도움이 될 경우에 추가했습니다. – Jozomby

+0

이 경우 클래스를 잘못 타겟팅하는 위치와 방법을 분명히 알기 때문에 특히 유용합니다. – ndm

답변

1

우선 jasig/phpcas은 CakePHP 플러그인이 아닙니다. 그리고 vendor/cakephp-plugins.php 파일은 CakePHP 플러그인 설치자에 의해 생성됩니다. 그래서 그러한 파일이 보이지 않는다면, 플러그인을 아직 설치하지 않았거나 최신 버전의 설치 프로그램을 사용하지 않는 것 같습니다. 이 파일은 최근에 소개되었습니다.

클래스에 대한 오류와 관련하여 전역 네임 스페이스의 클래스에 액세스하기 위해 선행 이름 공간 구분 기호 (\phpCAS::methodName())가 누락되어 있습니다. 클래스를 사용할 수 있도록 적절한 가져 오기 (use phpCAS;)가 누락되었습니다. 현재 네임 스페이스. 당신이 네임 스페이스에 익숙하지 않은 경우

, 당신은 시작 할 수 있습니다 : 오류를 수신 할 때 http://php.net/namespaces

+0

답변 해 주셔서 감사합니다. Cake의 카피에는 플러그인 설치 프로그램이 있습니다 (vendor \ cakephp \ plugin-installer가 무엇인지 추측 함). 그리고 CakePHP 3.0 문서에서 제공 한 packagist 링크에서 jasig/phpcas 플러그인을 찾았습니다. 그 분야에서 모든 것이 잘 작동하는 것처럼 보입니다. 가져 오기를 추가하면 문제가 해결 된 것으로 보입니다. 도와 주셔서 감사합니다; 나는 수입이 필요한지 여부와 그것을하는 방법을 연구하려고 많은 시간을 보냈으며 아무 것도 찾을 수 없었다. – Jozomby

+0

@Jozomby 플러그인 설치 프로그램에 대한 내 대답이 업데이트되었습니다. 오해의 소지가있었습니다. packagist는 세계적인 작곡가 저장소입니다. 모든 것을위한 것입니다! CakePHP (및 그 플러그인)뿐만 아니라 작곡가를 의존적 인 관리자로 사용하는 많은 프로젝트 중 하나입니다. – ndm