Список форумов Cake-PHP.ru Cake-PHP.ru
Форум программистов CakePHP
(на сайт)
 
 Watched TopicsWatched Topics   FAQFAQ   ПоискПоиск   ПользователиПользователи   ГруппыГруппы   РегистрацияРегистрация 
 ПрофильПрофиль   Войти и проверить личные сообщенияВойти и проверить личные сообщения   ВходВход 

Настройка маршрутов

 
Начать новую тему   Ответить на тему    Список форумов Cake-PHP.ru -> Общий
Предыдущая тема :: Следующая тема  
Автор Сообщение
uran26

цитировать



Зарегистрирован: 02 Апр 2009 12:13:49
Сообщения: 31
Откуда: Кировоград

СообщениеДобавлено: 21 Май 2009 14:47:59    Заголовок сообщения: Настройка маршрутов Ответить с цитатой

Добрый день всем!

Помогите настроить роуты.
Есть контроллер: Hotels

Содержимое routes.php:
Router::connect( "/:locale/:controller/:action/*", array( 'locale'=>'ru', 'controller' => 'hotels', 'action' => 'index') );
Router::connect('/ru', array( 'locale' => 'ru', 'controller' => 'hotels', 'action' => 'index'));
Router::connect('/en', array( 'locale' => 'en', 'controller' => 'hotels', 'action' => 'index'));
Router::connect('/ru/hotel', array( 'locale'=>'ru', 'controller' => 'hotels', 'action' => 'index'));
Router::connect('/en/hotel', array('locale'=>'ru', 'controller' => 'hotels', 'action' => 'index'));

То есть, я хочу чтобы:
1) при обращении к странице http://www.site.com/ru выполнялось действие action контроллера hotels на рус. яз.
2) при обращении к странице http://www.site.com/en выполнялось действие action контроллера hotels на англ. яз.
3) при обращении к странице http://www.site.com/ru/hotel выполнялось действие action контроллера hotels на рус. яз.
4) при обращении к странице http://www.site.com/en/hotel выполнялось действие action контроллера hotels на англ. яз.

В данный момент, при обращении, например, к http://www.site.com/ru/hotel, выдает ошибку: Missing Controller ...
И при обращении к станице http://www.site.com/ru/ выдает подобную ошибку, но работает при обращении к http://www.site.com/ru (без слэша в конце)

Как мне нужно изменить роуты чтобы это работало?
Заранее спасибо.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
michas

цитировать



Зарегистрирован: 28 Янв 2008 11:28:31
Сообщения: 123

СообщениеДобавлено: 22 Май 2009 12:20:07    Заголовок сообщения: Ответить с цитатой

Код:
Router::connect('/en', array('locale' => 'en','controller' => 'hotels', 'action' => 'index'));
Router::connect('/ru', array('locale' => 'ru','controller' => 'hotels', 'action' => 'index'));
Router::connect('/en/hotel', array('locale' => 'en','controller' => 'hotels', 'action' => 'index'));
Router::connect('/ru/hotel', array('locale' => 'ru','controller' => 'hotels', 'action' => 'index'));
Router::connect('/:locale/:controller/:action/*');

так должно работать
_________________
Все самое интересное в реальном времени - xmpp:cakephp@conference.jabber.ru
Вернуться к началу
Посмотреть профиль Отправить личное сообщение Посетить сайт автора
uran26

цитировать



Зарегистрирован: 02 Апр 2009 12:13:49
Сообщения: 31
Откуда: Кировоград

СообщениеДобавлено: 26 Май 2009 15:39:29    Заголовок сообщения: Ответить с цитатой

я убрал
Router::connect( "/:locale/:controller/:action/*", array( 'locale'=>'ru', 'controller' => 'hotels', 'action' => 'index') );
и все работает.
но остановился на вашем варианте, то есть в конце:
Router::connect('/:locale/:controller/:action/*');

спасибо.
Вернуться к началу
Посмотреть профиль Отправить личное сообщение
Имя
Сообщение

Смайлики
Very Happy Smile Sad Surprised
Shocked Confused Cool Laughing
Mad Razz Embarassed Crying or Very sad
Evil or Very Mad Twisted Evil Rolling Eyes Wink
Exclamation Question Idea Arrow
Дополнительные смайлики

 
Показать сообщения:   
Начать новую тему   Ответить на тему    Список форумов Cake-PHP.ru -> Общий Часовой пояс: GMT + 3
Страница 1 из 1

 
Перейти:  
Вы можете начинать темы
Вы можете отвечать на сообщения
Вы можете редактировать свои сообщения
Вы можете удалять свои сообщения
Вы не можете голосовать в опросах


Powered by phpBB © 2001, 2005 phpBB Group
Русская поддержка phpBB

Рейтинг@Mail.ru