2014-09-25 2 views
0

그래서 기본적으로 파일을 다운로드하려고합니다.CakePHP 다운로드 파일 오류

이 오류가 발생합니다
public function getfile() { 
     $this->autoRender = false; 
     $accesskey = 'mrPQVeJF8VFXpSq'; 
     $data = $this->File->find('first', array('conditions' => array('File.accesskey =' => $accesskey))); 

     $filepath = substr($data['File']['path'], 17); 

     $this->response->file($filepath, array('download' => true, 'name' => $data['File']['name'])); 

     return $this->response; 
    } 

: (내가 $으로 라인을 생각 this-> 응답 -> 파일())

Fatal Error Error: Class 'File' not found File: C:\wamp\www\project\lib\Cake\Network\CakeResponse.php Line: 1347

답변

1

클래스 File가되어

나는 액션을 가지고 Utility of cake. 따라서 모델로 사용하면 문제가 발생할 수 있습니다. 나는 그것을 바꿀 것을 권한다. 예약 케이크 및 PHP 단어 here에 대해 자세히 알아보십시오. 이는 귀하의 오류의 원인 일 수 있습니다.

그리고 그 오류의 다른 원인은 사용자가 FilesController에 없기 때문에 거기에 Find 모델을 호출하려고한다는 것입니다. 즉 다른 컨트롤러에서 모델을로드하는 방법을 읽기 위해 (ClassRegistry::init 또는 $this->loadModel()를 찾습니다.

을 난 그냥 여기 추측하고있어, 당신은 "문제를주는 행을 추측하는 것은 $this->response->file()이다"때문이다. 당신은 당신이 경우보다 정확한 응답을 얻을 수 있습니다 정확히 어떤 라인이 오류를 일으키는 지 추측하고 디버그하지 마십시오.

관련 문제