Я только начал изучать cakephp и получил пример Blog, работающий, за исключением маршрутизации, я все еще не совсем уверен, как это работает после прочтения многих и многих документов по маршрутизации (в том числе в официальной кулинарной книге).проблема маршрутизации cakephp (или, может быть, просто путаница)
Моя проблема с корневой маршрутизацией «/», я хочу, чтобы перейти к функции индекса() в PostsController поэтому я использую:
Router::connect ('/', array('controller'=>'posts', 'action'=>'index'));
Но это не работает, если я иду URL-адрес: локальный/
Это, вероятно, (наиболее определенно), потому что я не знаю, куда поместить папку cake_1_3/установка, в настоящее время дерево каталогов для локального хоста (в HTDOCS) выглядит следующим образом:
-htdocs> сообщения> cake_ 1_3
Это означает, что, когда я перейти к: LOCALHOST/ я ничего не получаю, и когда я перейти к: локальный/сообщений/ я ничего не получаю, просто листинг каталога для папки «сообщения», который показывает, что я есть каталог «cake_1_3».
Только тогда, когда я иду в URL: LOCALHOST/сообщения/cake_1_3/сообщений/ делает работу маршрутизации, как он видит вторые «сообщения» и так работает «индекс» функцию «PostsController» ,
Очевидно, это не то, что я хочу, я хочу, чтобы иметь возможность: localhost/posts/ и использовать функцию индекса PostsController. Обновление
: функция LOCALHOST/сообщений/сообщений/ для того, чтобы использовать индекс(): Я на самом деле пытался принимать все CakePHP вещи из «cake_1_3» и просто в «посты», но тогда я должен пойти of PostsController.
Есть ли способ, которым я могу просто перейти на localhost/posts/, и я получу функцию index() для запуска PostsController?
Я знаю, что это, вероятно, очень простая проблема, и я просто что-то пропустил, потому что я так устал (ну, во всяком случае, это мое оправдание), но я искал около 3 часов и не хотел ум руку помощи.
Спасибо за ваше время,
InfinitiFizz
P.S. Я только что понял, что могу сбросить все файлы/папки установки cakephp в корневой каталог (htdocs), а затем localhost/posts/ будет работать, но у меня есть множество различных тестовых сайтов в их собственных папках в htdocs/и так Я бы предпочел также, чтобы этот пост тестировал в своей собственной папке, а не все папки cakephp, смешанные со всеми папками других веб-сайтов.
Ах хорошо, я думаю, что я путаюсь с «/», то родственник, спасибо за большой ответ и веселый торт на основе каламбур :) –
На самом деле жаль, что я до сих пор есть проблемы здесь. Если я перейду к «localhost/posts /», я перенаправляюсь к списку каталогов для «posts/app/webroot», а не туда, где, как я думал, я маршрутизирую. Я использую ту же маршрутизацию, что и в моем вопросе, для корневой папки '/', чтобы перейти к функции index() контроллера столбцов. Я думал, что это будет означать, что «localhost/posts /» принимает меня туда, но это не так, только «localhost/posts/posts /» делает. (В соответствии с вашим примером замените сообщения mywebapp как имя папки). Извините за отказ, но я только что осознал эту проблему. Спасибо за ваше время. –
Это также означает, что когда я делаю ссылки «удалить» или «отредактировать», я перенаправляюсь в список каталогов «posts/app/webroot», и только когда я набираю «localhost/posts/posts /» снова, я вижу flash() «Сообщение было удалено», поэтому кажется, что моя проблема маршрутизации также перепутала перенаправление. Код перенаправления - это $ this-> redirect (array ('action' => 'index')); " Thanks, InfinitiFizz –