2015-01-19 2 views
0

최근 php를 배우기로 결심했고 yii 프레임 워크를 발견했습니다. 언뜻보기에는 작업하기가 매우 쉬웠지만 지금은 Enum과 함께 작동하도록 확장 프로그램을 설치하기 위해 웹 응용 프로그램을 구성하는 데 어려움을 겪고 있습니다. 나는 그들의 웹 사이트에서이 확장을 다운로드했고 확장 폴더 안에 넣었다. 문제는 내 코드에서 만든 하위 클래스를 호출 할 수 없다는 것입니다. 이 수퍼 클래스 (확장)에서 확장되는 몇 가지 클래스를 만들었습니다.yii 확장 프로그램을 설치하면 전체 웹 응용 프로그램에서 어떻게 사용할 수 있습니까?

이 확장 클래스를 만들기 위해 수행해야하는 구성은 웹 응용 프로그램 코드에서 사용할 수 있습니까?

난 그냥 내 확장 폴더에 그 확장 클래스를 넣어 난 그냥 컨트롤러의 메소드 내부를 인스턴스화하고 말했듯이.

이 (xxx.php)를 포함 : 나는 코드를 실행하면 내가 할 상관없이 모든 구성 같은 오류 메시지가 해당 파일이나 디렉토리

을 사람이 원하는 경우 : 스트림을 열지 못했다 이 확장 프로그램에 대한 자세한 내용은 해당 정보를 보여주는 페이지입니다. config/main.php에서

http://www.yiiframework.com/extension/enum/

답변

0

당신은 구성 요소 배열에 확장 세부 사항을 추가해야합니다, 뭔가 같은 :

return array(
     // 'preload'=>array('xyz',...), 
     'components'=>array(
      'xyz'=>array(
       'class'=>'ext.xyz.XyzClass', 
       'property1'=>'value1', 
       'property2'=>'value2', 
      ), 
      // other component configurations 
     ), 

); 
xyz가 확장에게 있습니다

하거나 확장 폴더에 넣어 Yii::import('application.extensions.extensionname.*');

+0

로 가져 오기 config 전역 가져 오기에 추가 할 수도 있습니다. '가져 오기 => [ 'alias. *'] ''를 사용하여 각보기에서 가져 오기를 피하십시오. –

+0

당신의 지시를 따랐지 만 이제는 추상적 인 클래스 Enum을 인스턴스화 할 수 없다는 치명적인 오류가 발생합니다. 이제이 오류를 해결할 수 있도록 추가 구성이 필요합니까? 이 ** (xxx.php)를 포함 : 스트림을 열지 못했습니다 – TuLePe

+0

나는 심지어 가져 오기 섹션에 대한 한 줄을 넣어하려고, 그래서 사용에 대한 내 전체 웹 응용 프로그램에서 사용할 수,하지만 난 여전히 같은 오류와 함께했다 : 해당 파일이나 디렉토리가 없습니다 **. 나는 아직도 그것을 얻지 않는다. 응용 프로그램이 추상 클래스 인 경우이 확장 클래스의 인스턴스에 대해 불평하는 이유는 무엇입니까? 올바른 설정을했다면, 애플리케이션은 추상 클래스의 인스턴스 생성 문제에 대해 불평해서는 안된다. 서브 클래스를 생성했기 때문에이 클래스에 대해 불평하지 않을 것이라고 생각했다. – TuLePe