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

перенаправление в роуте
http://forum.kohanaframework.su/viewtopic.php?f=31&t=735
Страница 1 из 1

Автор:  strannik17 [ 19 авг 2013, 14:17 ]
Заголовок сообщения:  перенаправление в роуте

Здравствуйте

Необходимо генерировать необходимый контент из базы.

сделал так в
application\views\templates\my_tempate.php
в меню передаю id
Код:
<li><a href="kohana.local/?id=1">первая стр</a></li>
<li><a href="kohana.local/?id=2">вторая стр</a></li>


а в на страничке видов
application\views\pages\home.php

вытаскиваю id при помощи метода GET

Код:
<h2>Это динамичная страница</h2>
<?php 

$id 
$_GET['id'];

$articles ORM::factory('article');
$article ORM::factory('article'$id);
echo 
$article->title;
echo 
$article->text;

?>


работает но теперь урлы не устраивают
http://kohana.local/?id=1
http://kohana.local/?id=2

хочу такие

http://kohana.local/razdel1
http://kohana.local/razdel2

думаю что надо сделать некие правила в роутах но какие и как?

// Мои роуты
Код:
Route::set('my_route_about''razdel1')
    ->
defaults(array(
        
'controller' => 'page',
        
'action'     => 'index',
        
'id'     => '1',
    ));                                               

 
вопрос?

Возможно я не правильно делаю но цель такова

кликаешь на ссылку 1 она вытягивает статью 1 из базы,
кликаешь на ссылку 2 она вытягивает соответственно статью 2 из базы
вроде все просто, но...

Автор:  WinterSilence [ 19 авг 2013, 14:47 ]
Заголовок сообщения:  Re: перенаправление в роуте

подключить и настроить .htaccess
Код:
Route::set('item', '<controller>/item/<slug>', array(
        'slug' => '[\w\-/]+',
    ))
    ->defaults(array(
        'directory'  => 'Page',
        'controller' => '',
        'action'     => 'index',
        'slug'       => '',
    ));

class Controller_Page_Info extends Controller_Page
{
   public function action_index()
   {
      if (isset($this->param['slug']))
      {
         $model = ORM::factory('Info', array('slug' => $this->param['slug']));
         if ($model->loaded())
         {
            $this->view->item = $model->as_array();
            return TRUE;
         }
      }
      throw HTTP_Exception::factory(404, 'Item :url not found',
         array(':url' => $this->request->url()));
   }
}

Автор:  strannik17 [ 19 авг 2013, 16:06 ]
Заголовок сообщения:  Re: перенаправление в роуте

понял что создается роут в бутстрапе и новый контроллер, но не понятно что за
'directory' => 'Division', slug, Info ?

Автор:  WinterSilence [ 19 авг 2013, 16:11 ]
Заголовок сообщения:  Re: перенаправление в роуте

strannik17 писал(а):
понял что создается роут в бутстрапе и новый контроллер, но не понятно что за
'directory' => 'Division', slug, Info ?

ошибся Division заменил на Page

http://en.wikipedia.org/wiki/Clean_URL Slug

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