Я пишу основной плагин для моего приложения cakePHP 2.x в соответствии с инструкциями в книге .
Я создал структуру каталога / файла с помощью MyPluginAppController.php и MyPluginAppModel.php.
Я добавил CakePlugin::load('MyPlugin');
в файл bootstrap.php родительского приложения.
Затем я создал один контроллер и модель. Но по какой-то причине, когда я пытаюсь просмотреть mysite.dev/(admin)/my_plugin/my_model/
я получаю ошибку «Отсутствующий вид». Он говорит, чтобы подтвердить, что файл просмотра существует, что он делает!
Я не думаю, что я пропустил какие-то шаги из книги. Что я делаю не так?
Обновить:
Путь контроллера: app/Plugin/MyPlugin/Controller/MyModelController.php
Посмотреть путь: app/Plugin/MyPlugin/View/MyModel/admin_index.php
URL: http://mysite.dev/admin/my_plugin/my_model/
Переименуйте этот файл
app/Plugin/MyPlugin/View/MyModel/admin_index.php
К этому расширению .ctp
app/Plugin/MyPlugin/View/MyModel/admin_index.ctp
Это распространенная ошибка.
Я не использовал плагин, поэтому мой случай был немного другим. Однако этот вопрос появляется на странице результатов поиска, поэтому я опубликую здесь.
Это проблемный контроллер.
<?php class ArticlesController extends AppController { public function beforeFilter() { } public function view() { // do stuff } }
CakePHP продолжал показывать мне следующую ошибку:
Отсутствует вид
Ошибка: вид для статьиController :: view () не найден.
Подтвердите, что вы создали файл: Articles / view.ctp одним из следующих путей:
Я проверил все пути, которые он предложил, используя is_readable()
и команду stat
чтобы убедиться, что файл представления существует и действительно читается PHP.
Проблема заключается в пустой beforeFilter()
. Как только я удалил все, все сработало.