CakePHP отсутствует контроллер - но он существует - PullRequest
1 голос
/ 20 сентября 2010

Я недавно скачал cakephp-1.3.4. Я настроил это на своем веб-сервере. Я следил за расширенными настройками установки. Моя структура папок выглядит следующим образом.

/common/
  cakephp/
     app/
     etc...
/htdoc/

Папка /htdoc является webroot; cakephp находится в папке common.

Я настроил пути в index.php, чтобы они указывали на эту структуру папок. У меня есть приложение и работает. Я создал макет, приложение подобрало его (вместе со всеми CSS и изображениями - все, что работает).

Я создал posts_controller.php в cakephp/app/controllers/. Теперь, когда я пытаюсь получить доступ к следующей странице: http://localhost/posts. я получаю сообщение, что контроллер не может быть найден и что мне нужно создать app/controllers/posts_controller.php (он уже существует!).

Также странно то, что используется стандартный page_controller работает . Я создал about.ctp и поместил его в app/views/pages/about.ctp. Vising http://localhost/pages/about появляется как ожидалось.

РЕШЕНИЕ:

Сэм помог мне решить эту проблему (см. Длинную ветку комментариев ниже). Проблема была в том, что я установил относительные пути для моей ROOT-папки. Это все испортило. Решение состоит в том, чтобы либо напрямую установить абсолютный путь , либо вызвать realpath с указанием относительного пути для его преобразования в правильный абсолютный путь.

1 Ответ

3 голосов
/ 20 сентября 2010

Убедитесь, что ваш класс контроллера назван правильно (должен быть PostsController) и наследуется от AppController (не обязательно, но рекомендуется).

...