Русскоязычный форум, посвященный фреймворку Kohana http://forum.kohanaframework.su/ |
|
Проблема с роутами http://forum.kohanaframework.su/viewtopic.php?f=31&t=211 |
Страница 1 из 1 |
Автор: | websto [ 05 июн 2012, 22:49 ] |
Заголовок сообщения: | Проблема с роутами |
Есть роуты Route::set('cat', '<cat>/<id>/<artname>(/<page>)', array('id' => '[0-9]+'), array('artname' => '.+'),array('page' => '[0-9]+')) ->defaults(array( 'controller' => 'categ', 'action' => 'cat', )); Выводит вот такую ссылку http://localhost/site/cat/2/document Route::set('do_search', 'search(/<artname>)', array('artname' => '.*')) ->defaults(array( 'controller' => 'search', 'action' => 'search', )); этот выводит http://localhost/site/search?text=поиск роут поиска по сайту Когда на главной странице кликаеш по поиску все нормально выводится а когда на этой странице http://localhost/site/cat/2/document то выводит http://localhost/site/cat/2/search?text= Не могу понять как его настроит |
Автор: | qed [ 05 июн 2012, 23:06 ] |
Заголовок сообщения: | Re: Проблема с роутами |
Цитата: Когда на главной странице кликаеш по поиску Если я правильно понял, то дело в том, как указан урл в шаблоне. Покажите вид, в котором находится кнопка поиска. |
Автор: | websto [ 05 июн 2012, 23:18 ] |
Заголовок сообщения: | Re: Проблема с роутами |
В смысле submit формы?Вот вся форма <form action='search' method="get"> <input type='text' name='text' id='search_box'/> <input type='submit' value='GO' class='search_button'/> <br/> </form> |
Автор: | websto [ 05 июн 2012, 23:26 ] |
Заголовок сообщения: | Re: Проблема с роутами |
Да я разобрался это действительно дело было в форме сделал вот так и работает <?php echo Form::open('/search', array('method'=>'GET'));?> <?php echo Form::input('text'); ?> <?php echo Form::submit(NULL, 'GO'); ?> <?php echo Form::close(); ?> Вернее я не понял в чем было дело но главное что работает |
Автор: | ivank_x [ 05 июн 2012, 23:46 ] |
Заголовок сообщения: | Re: Проблема с роутами |
Абсолютный путь указали /search, вместо search, поэтому и заработало |
Автор: | qed [ 05 июн 2012, 23:53 ] |
Заголовок сообщения: | Re: Проблема с роутами |
Хм. А вообще странно что заработало, если у вас сайт находится не в корне, а вдиректории /site, то относительный урл от слеша указывать нельзя, будет выводить http://localhost/search?text= вместо http://localhost/site/search?text= Хотя нет, что касается Form::open(), то он учитывает base_url из bootstrap.php, так что всё будет работать правильно, что немного странно, ведь если нам понадобится сгенерировать урл формы из роута, с помощью Route::url, то base_url подставится два раза. |
Автор: | websto [ 05 июн 2012, 23:55 ] |
Заголовок сообщения: | Re: Проблема с роутами |
Если здесь поставит <form action='/search' method="get"> то выдает Not Found.А как прописать в этом варианте абсолютный путь или все таки тот способ использовать. Просто мне здесь проще управлять стилями |
Автор: | qed [ 06 июн 2012, 00:05 ] |
Заголовок сообщения: | Re: Проблема с роутами |
Код:
если base_url в bootstrap.php указан как /site, то должно работать. |
Страница 1 из 1 | Часовой пояс: UTC + 4 часа [ Летнее время ] |
Powered by phpBB® Forum Software © phpBB Group http://www.phpbb.com/ |