CakePHP пусто передано Args
У меня есть форма в представлении:
echo $this->Form->create('Customers', array('action' => 'index'));
echo $this->Form->input('category_id');
echo $this->Form->end('Search');
И метод в контроллере:
function index() {
debug($this->passedArgs);
}
Но сообщение отладки выводит пустой массив.
Когда я набираю URL вручную:
http://domainna.me/admin/customers/index/category_id:4
сообщение отладки распечатывается: Array ( [season_id] => 16)
и все ведет себя так, как я хочу. Что мне не хватает?
-----Редактировать------
debug ($ this-> request-> params) печатает:
Array
(
[plugin] =>
[controller] => customers
[action] => index
[named] => Array
(
)
[pass] => Array
(
)
[isAjax] =>
)
1 ответ
Я думаю, что вам не хватает части GET: http://book.cakephp.org/2.0/en/core-libraries/helpers/form.html
тогда он будет использовать get-url вместо поста.
но я бы все же посоветовал вам использовать сложный поисковый плагин, например, торт dcs: https://github.com/CakeDC/search
там вы получите желаемый результат (используя перенаправление PRG). со всеми мощными функциями в комплекте.