ControllerFile не найдена ошибка в CakePHP - PullRequest
1 голос
/ 15 июля 2010

HI!Я пытаюсь создать веб-сервис в cakePhp.Я новичок в cakePhp и только недавно начал работать над этим.Я нашел полезное руководство по http://www.littlehart.net/atthekeyboard/2007/03/13/how-easy-are-web-services-in-cakephp-12-really-easy/. Я создал файлы контроллера и index.ctp, как описано в руководстве.Но когда я набрал url (http://localhost:81/cakephp/foo) контроллера для запуска файла, я получил следующую ошибку:

// controllers/recipes_controller.php
/**
 * Test controller for built-in web services in Cake 1.2.x.x
 *
 * @author Chris Hartjes
 *
 */
class FooController extends AppController {
    var $components = array('RequestHandler');
    var $uses = '';
    var $helpers = array('Text', 'Xml');
    function index() {
        $message = 'Testing';
        $this->set('message', $message);
        $this->RequestHandler->respondAs('xml');
        $this->viewPath .= '/xml';
        $this->layoutPath = 'xml';
    }
}

CakePHP: php framework быстрой разработки

ОтсутствуетКонтроллер

Ошибка: не найден FooController.

Ошибка: создайте класс FooController, указанный ниже в файле: app \ controllers \ foo_controller.php

Странно, что (всевидно, что текст контроллера загружен на странице ошибки, но ошибка показывает, что файл контроллера не найден. Я также пытался следовать учебному пособию на book.cakephp.org/view/477/The-Simple-Setup. Но та же ошибкатакже здесь произошло. Кто-нибудь может помочь? Кстати, я также изменил текст route.php для работы с веб-сервисами. Спасибо

Ответы [ 2 ]

1 голос
/ 12 сентября 2013

Тот факт, что содержимое вашего FooController файла выводится в браузере, указывает на то, что PHP не выполняется.

Необходимо убедиться, что определение для вашего класса FooController включенов тегах <?php и ?>, например:

// controllers/recipes_controller.php
/**
 * Test controller for built-in web services in Cake 1.2.x.x
 *
 * @author Chris Hartjes
 *
 */
<?php
class FooController extends AppController {
    var $components = array('RequestHandler');
    var $uses = '';
    var $helpers = array('Text', 'Xml');
    function index() {
        $message = 'Testing';
        $this->set('message', $message);
        $this->RequestHandler->respondAs('xml');
        $this->viewPath .= '/xml';
        $this->layoutPath = 'xml';
    }
}
?>
0 голосов
/ 15 июля 2010

Вы ввели URL http://localhost:81/cakephp/foo. Cake правильно интерпретирует это так, что вы ищете действие index на FooController. Ошибка не означает, что он нашел файл, просто он определил, что искать, но не нашел его там, где он ожидает.

Строка: Ошибка: Create the class FooController below in file: app\controllers\foo_controller.php говорит вам, что должно быть там (и как, как минимум, должно выглядеть). Убедитесь, что вы правильно назвали файл и нашли его там, где сообщается об ошибке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...