2010-10-28 22 views
0

J'ai ce routage défini dans init.php de mon module;kohana 3 problème de routage avec le paramètre d'action du contrôleur


Route::set('store', 'store/<store_id>(/<controller>(/<action>(/<id>)))', 
    array(
    'store_id' => '\d+' 
)) 
    ->defaults(array(
    'controller' => 'main', 
    'action'  => 'index', 
)); 

et l'itinéraire par défaut dans bootstrap.php est toujours intact.


Route::set('default', '(<controller>(/<action>(/<id>)))') 
    ->defaults(array(
     'controller' => 'welcome', 
     'action'  => 'index', 
    )); 

ma classe Controller_Item;


class Controller_Item extends Controller { 
    function action_category($category_id) 
    { 
     echo 'Category ID: '.$category_id; 
    } 
} 

Utilisation http://mydomain.com/item/category/8
sortie:

Category ID: 8
ils pointent pour corriger le routage qui était;
Controller_Item et méthode action_category (8)

Le problème est l'utilisation de la voie modifiée; http://mydomain.com/store/1/item/category/8 Sortie:

Category ID: 1
il devient action_category (1) (il prend le paramètre de < store_id>)

Répondre

2

Get par nom param:

$id = $this->request->param('id');