CakePHP - настройка маршрута - PullRequest
0 голосов
/ 29 апреля 2010

Я работаю над CakePHP и совершенно новичок в PHP / CakePHP. Подскажите, пожалуйста, что не так с моей конфигурацией маршрута?

Router::connect(
 '/news/:q/:page',
 array('controller' => 'news', 
       'action' => 'onDemand',
       'mode'=>'news',
       'page'=>1),
 array('pass'=>array('q','mode','page'),
       'page' => '[\d]+'));

Когда я захожу на страницу как / news / 123 или / news / 123/1, он пытается найти действие '123' в контроллере новостей.

По сути, все, что я хочу сделать, это то, что если пользователь вводит / news / android, я хочу захватить 'android' для запроса и возврата результатов. Если результаты слишком велики, необходимо поддерживать нумерацию страниц, то есть URL становится /news/android/(2...n).

1 Ответ

1 голос
/ 29 апреля 2010

Вы можете просто сделать это:

Router::connect('/news/*', array('controller' => 'news', 'action' => 'onDemand'));

Ваша функция onDemand объявлена ​​как:

public function onDemand($subject, $page = null)

Когда пользователь запрашивает /news/android или /news/android/2 торт, вызовет onDemand('android') или onDemand('android', '2') соответственно.

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