Cakephp2.0缺少组件

Cakephp2.0缺少组件,php,cakephp,Php,Cakephp,我使用了一个组件名upload.php并将其保存在/app/controllers/components/directory中 之后,我在控制器中使用了如下代码 <?php App::uses('AppController', 'Controller'); App::uses('BarcodeHelper','Vendor'); /** * OesUsers Controller * * @property OesUser $OesUser */ class OesUsersC

我使用了一个组件名upload.php并将其保存在/app/controllers/components/directory中

之后,我在控制器中使用了如下代码

<?php
App::uses('AppController', 'Controller');

App::uses('BarcodeHelper','Vendor');
/**
 * OesUsers Controller
 *
 * @property OesUser $OesUser
 */

class OesUsersController extends AppController {

    var $name = 'Images';
    var $helpers = array('Html', 'Form');
    var $components = array('upload');

function upload() {

if (empty($this->data)) {
    $this->render();
} else {
    $this->cleanUpFields();

    // set the upload destination folder
    $destination = realpath('../../app/webroot/img/uploads/') . '/';

    // grab the file
    $file = $this->data['Image']['filedata'];

    // upload the image using the upload component
    $result = $this->Upload->upload($file, $destination, null, array('type' => 'resizecrop', 'size' => array('400', '300'), 'output' => 'jpg'));

    if (!$result){
        $this->data['Image']['filedata'] = $this->Upload->result;
    } else {
        // display error
        $errors = $this->Upload->errors;

        // piece together errors
        if(is_array($errors)){ $errors = implode("<br />",$errors); }

        $this->Session->setFlash($errors);
        $this->redirect('/images/upload');
        exit();
    }
    if ($this->Image->save($this->data)) {
        $this->Session->setFlash('Image has been added.');
        $this->redirect('/images/index');
    } else {
        $this->Session->setFlash('Please correct errors below.');
        unlink($destination.$this->Upload->result);
    }
}
}

您将组件放在了错误的文件夹中。在CakePHP2.x中,组件被放置在
app/Controller/Component
中。您还必须将组件从
upload.php
重命名为
UploadComponent
(可能需要修改代码以使其与CakePHP 2.x一起工作)