2011-10-12 4 views
0
$router->addRoute('routeName', new Zend_Controller_Router_Route(
    'test/:category/', array(
     'module'  => 'default', 
     'controller' => 'test', 
     'action'  => ':category' 
    ) 
)); 

C'est mon code pour le moment (voir ci-dessus). Comment puis-je appeler maintenant l'action par un paramètre donné (via l'URL)? L'apparence de l'url, par ex. comme ça: domain.com/test/news/ et maintenant je veux appeler l'action newsAction() dans le contrôleur de test. Avec le code ci-dessus, j'obtiens l'erreur: Action "category" does not exist and was not trapped in __call()Zend Framework - Route: Action d'appel par param

Répondre

3

Votre déclaration est inutile. L'objectif que vous voulez atteindre est exactement le fonctionnement de l'itinéraire standard.

1

Vous devriez pouvoir utiliser simplement: action sur votre route. Vous pouvez également utiliser une méthode personnalisée __call() dans votre contrôleur pour capturer les noms d'actions dynamiques.