Русскоязычный форум, посвященный фреймворку Kohana
http://forum.kohanaframework.su/

Проблема роутинга
http://forum.kohanaframework.su/viewtopic.php?f=21&t=382
Страница 1 из 2

Автор:  established [ 17 сен 2012, 10:10 ]
Заголовок сообщения:  Проблема роутинга

здравствуйте у меня не работает роут помогите пожалюста я устоновил язык может из за этого ?

Код:
bootstrap.php :
   
// Set the routes. Each route must have a minimum of a name, a URI and a set of


// user route
Route::set('user', '<lang>/user(/<action>)')
   ->defaults(array(
      'controller' => 'user',
      'action'     => 'register',
   ));
   
 
   
// catching 404 error
//set_exception_handler(array('Exceptionhandler', 'handle'));   


А это котроллер

Код:
controller/user.php :

class Controller_User extends Controller_Template {

public $template = ‘template’;

public function action_register()
{
include_once(«./application/blocks/reading.php»);

$data['language']=$lang;

$this->template->body=View::factory(‘userreg’,$data)->render();

}


мой темплейт

Код:
views/template.php:

<?php
   // setting current language for template
   I18n::lang($lang);
?>

<?php
   
    echo $body;
   
?>


Код:
views/userreg.php:

<?php
   // setting current language for template

//   I18n::lang($lang);

   
?>   
   
   

   
    <form action="<?echo URL::base(true, true) . $language ?>/user/checkregister" method="post">
       
        <?   echo __('Name,Surname') ?> <input type="text" name="name" value="<? echo $txt_name; ?>" /> <br/>
        <?   echo __('E-mail') ?> <input type="text" name="email"  value="<? echo $txt_email; ?>" /><br/>
        <?   echo __('Telephone') ?> <input type="text" name="tel" value="<? echo $txt_tel; ?>" /><br/>
        <?   echo __('Mobile telephone') ?><input type="text" name="mtel" value="<? echo $txt_mtel; ?>" /><br/>
        <?   echo __('Adress') ?> <input type="text" name="adress" value="<? echo $txt_adress; ?>" /><br/>       
        <?   echo __('Login') ?> <input type="text" name="login" value="<? echo $txt_login; ?>" /><br/>
        <?   echo __('Password') ?> <input type="password" name="pass"/><br/>
        <?   echo __('Confirm Password') ?> <input type="password" name="passc"/><br/>
        <br/>
        <input type="submit" name="reg_send" name="ok" />
       
   
       

    </form>
   

 


Вложения:
Комментарий к файлу: основные файлы для роутинга
routing.rar [7.64 КБ]
Скачиваний: 344

Автор:  Sergey [ 17 сен 2012, 10:33 ]
Заголовок сообщения:  Re: Проблема роутинга

Ну, начать нужно с написания правильного роута.

Цитата:
// user route
Route::set(‘user’, ‘/user(/)’)
->defaults(array(
‘controller’ => ‘user’,
‘action’ => ‘index’,
));


Что означает здесь ‘/user(/)’? И потом ‘action’ => ‘index’, писать не нужно, потому что по умолчанию экшн и так равен ‘index’. Зачем одно и то же переопределять? Далее.. В контролёре у вас action_register() а в экшене ‘index’. Вы не видите разницу?

Как нибудь вот так надо:
Код:
// user route
Route::set(‘user’, ‘<controller>(/<action>)’)
->defaults(array(
‘controller’ => ‘user’,
));


Или так

Код:
// user route
Route::set(‘user’, ‘user(/<action>)’)
->defaults(array(
‘controller’ => ‘user’,
));


Но в этих 2 примерах имеется ввиду, что экшн по умолчанию у вас index. Если же такого экшена у вас нет и вам нужно явно указать какой экшн использовать по умолчанию, это нужно прописать в роуте:


Код:
// user route
Route::set(‘user’, ‘user(/<action>)’)
->defaults(array(
‘controller’ => ‘user’,
‘action’ => ‘register’,
));

Автор:  established [ 17 сен 2012, 10:39 ]
Заголовок сообщения:  Re: Проблема роутинга

я исправил все . вот на верху редактировал все . в этаком виде тоже не работает (

Автор:  Sergey [ 17 сен 2012, 11:25 ]
Заголовок сообщения:  Re: Проблема роутинга

Что такое <lang>/ ? Как вы вобще планируете попасть на эту страницу? Какой должен быть адрес?

Автор:  established [ 17 сен 2012, 11:35 ]
Заголовок сообщения:  Re: Проблема роутинга

domen/ru/user/register

например так должна получиться . тут у нас старые проекты так работают . а че то у меня не получаеться .
я добавил основные файлы в архив можете посматреть .

Автор:  Sergey [ 17 сен 2012, 11:42 ]
Заголовок сообщения:  Re: Проблема роутинга

Код:
// user route
Route::set(‘user’, ‘<lang>/user(/<action>)’, array('lang' => 'ru|en'))
->defaults(array(
‘controller’ => ‘user’,
‘action’ => ‘register’,
));

Автор:  established [ 17 сен 2012, 11:54 ]
Заголовок сообщения:  Re: Проблема роутинга

не работает ( так тоже не помогло
HTTP_Exception_404 [ 404 ]: Unable to find a route to match the URI:

Автор:  evgentus [ 17 сен 2012, 12:23 ]
Заголовок сообщения:  Re: Проблема роутинга

А роуты у вас случайно старые не кэшируются?

Автор:  established [ 17 сен 2012, 12:36 ]
Заголовок сообщения:  Re: Проблема роутинга

думаю что нет нет в этом дела . а кто то может подключиться в мой комп через teamviwer и исправить ошибку ?

Автор:  evgentus [ 17 сен 2012, 12:44 ]
Заголовок сообщения:  Re: Проблема роутинга

established писал(а):
думаю что нет нет в этом дела . а кто то может подключиться в мой комп через teamviwer и исправить ошибку ?


Если научишь как подключиться, попытаюсь помочь)))

Страница 1 из 2 Часовой пояс: UTC + 4 часа [ Летнее время ]
Powered by phpBB® Forum Software © phpBB Group
http://www.phpbb.com/