[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Kohana
Stasonix
На данный момент у меня 3 роута (последний не в счет, так что по сути 2):

Route::set('applications', 'applications(/<url>)', array('url' => '.+'))
->
defaults(array(
'controller' => 'subject',
'action' => 'index',
));


Route::set('web', 'web(/<url>)', array('url' => '.+'))
->
defaults(array(
'controller' => 'subject',
'action' => 'index',
));


Route::set('default', '(<controller>(/<action>(/<id>)))')
->
defaults(array(
'controller' => 'main',
'action' => 'index',
));


Из всего этого следует что юзер перейдя по ссылкам mysite/web и mysite/application попадает (условно) на контролллер subject и метод action_index.

Вопрос, как сделать так чтобы если юзер перейдя по всем остальным ссылкам вида:

mysite/A
mysite/B
...
mysite/Z

т.е. разным всяким, попадал в этот же контроллер subject, но уже в другой метод, допустим метод test? Но 1-ые два роута должны все-равно срабатывать?



Спустя 32 минуты, 5 секунд (2.09.2012 - 12:38) Семён написал(а):
Расположить роуты примерно таким образом:

Route::set('applications', 'applications(/<url>)', array('url' => '.+'))
->
defaults(array(
'controller' => 'subject',
'action' => 'index',
));


Route::set('web', 'web(/<url>)', array('url' => '.+'))
->
defaults(array(
'controller' => 'subject',
'action' => 'index',
));


Route::set('all', '<url>', array('url' => '.+'))
->
defaults(array(
'controller' => 'subject',
'action' => 'other_action',
));


Спустя 26 минут, 29 секунд (2.09.2012 - 13:05) Stasonix написал(а):
Спасибо, разобрался! Но все-равно, еще будут вопросы, сложная тема!

Спустя 14 минут, 51 секунда (2.09.2012 - 13:20) Stasonix написал(а):
Хотя вот 1-ый камень, нужно взять имя текущего получается роута, т.е. если пользователь перешел по mysite/A, то как взять в контроллере это имя A?

С предыдущими двумя роутами это было реализовано вот так:

		// определяем имя роута
$current_route = Request::$current->route(); // объект Route
$current_route_name = Route::name($current_route); // название маршрута


Но если я применю это к all, то в имени, оно мне и выведет all, а нужно A.

Спустя 21 минута, 23 секунды (2.09.2012 - 13:41) Stasonix написал(а):
Ладно, само дошло:

$url = $this->request->param('url');
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.