Русскоязычный форум, посвященный фреймворку Kohana

Все о фреймворке Kohana. Обсуждение уроков, документации.
Текущее время: 18 май 2024, 11:34

Часовой пояс: UTC + 4 часа [ Летнее время ]




Начать новую тему Ответить на тему  [ Сообщений: 8 ] 
Автор Сообщение
 Заголовок сообщения: Проблема с роутами
СообщениеДобавлено: 05 июн 2012, 22:49 
Не в сети
Бывалый

Зарегистрирован: 21 май 2012, 20:54
Сообщения: 81
Есть роуты

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=

Не могу понять как его настроит

_________________
Меньше кода -> меньше ошибок


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с роутами
СообщениеДобавлено: 05 июн 2012, 23:06 
Не в сети
Бывалый

Зарегистрирован: 02 июн 2012, 07:14
Сообщения: 69
Цитата:
Когда на главной странице кликаеш по поиску

Если я правильно понял, то дело в том, как указан урл в шаблоне. Покажите вид, в котором находится кнопка поиска.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с роутами
СообщениеДобавлено: 05 июн 2012, 23:18 
Не в сети
Бывалый

Зарегистрирован: 21 май 2012, 20:54
Сообщения: 81
В смысле 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:27, всего редактировалось 1 раз.

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с роутами
СообщениеДобавлено: 05 июн 2012, 23:26 
Не в сети
Бывалый

Зарегистрирован: 21 май 2012, 20:54
Сообщения: 81
Да я разобрался это действительно дело было в форме сделал вот так и работает

<?php echo Form::open('/search', array('method'=>'GET'));?>
<?php echo Form::input('text'); ?>
<?php echo Form::submit(NULL, 'GO'); ?>
<?php echo Form::close(); ?>

Вернее я не понял в чем было дело но главное что работает

_________________
Меньше кода -> меньше ошибок


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с роутами
СообщениеДобавлено: 05 июн 2012, 23:46 
Не в сети
Новичок

Зарегистрирован: 13 май 2012, 13:16
Сообщения: 29
Абсолютный путь указали /search, вместо search, поэтому и заработало


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с роутами
СообщениеДобавлено: 05 июн 2012, 23:53 
Не в сети
Бывалый

Зарегистрирован: 02 июн 2012, 07:14
Сообщения: 69
Хм. А вообще странно что заработало, если у вас сайт находится не в корне, а вдиректории /site, то относительный урл от слеша указывать нельзя, будет выводить
http://localhost/search?text=
вместо
http://localhost/site/search?text=


Хотя нет, что касается Form::open(), то он учитывает base_url из bootstrap.php, так что всё будет работать правильно, что немного странно, ведь если нам понадобится сгенерировать урл формы из роута, с помощью Route::url, то base_url подставится два раза.


Последний раз редактировалось qed 06 июн 2012, 00:24, всего редактировалось 2 раз(а).

Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с роутами
СообщениеДобавлено: 05 июн 2012, 23:55 
Не в сети
Бывалый

Зарегистрирован: 21 май 2012, 20:54
Сообщения: 81
Если здесь поставит

<form action='/search' method="get">

то выдает Not Found.А как прописать в этом варианте абсолютный путь или все таки тот способ использовать.
Просто мне здесь проще управлять стилями

_________________
Меньше кода -> меньше ошибок


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Проблема с роутами
СообщениеДобавлено: 06 июн 2012, 00:05 
Не в сети
Бывалый

Зарегистрирован: 02 июн 2012, 07:14
Сообщения: 69
Код:
<form action="<? echo Route::url('search'); ?>" method="get">

если base_url в bootstrap.php указан как /site, то должно работать.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 8 ] 

Часовой пояс: UTC + 4 часа [ Летнее время ]


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 1


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Перейти:  
Все о фреймворке Kohana  | 
Powered by phpBB® Forum Software © phpBB Group