Consultez la FAQ sur le ZF avant de poster une question
Vous n'êtes pas identifié.
bonjour,
Dans l'exemple Album je souhaite ajouter un nouveau controlleur TotoController.php avec ses actions.
Je n'arrive pas à configuer le module.config.php pour ouvrir la route album/toto/index ....
<?php return array( 'controllers' => array( 'invokables' => array( 'Album\Controller\Album' => 'Album\Controller\AlbumController', ), ), 'router' => array( 'routes' => array( 'album' => array( 'type' => 'segment', 'options' => array( 'route' => '/album[/:action][/:id][/]', 'constraints' => array( 'action' => '[a-zA-Z][a-zA-Z0-9_-]*', 'id' => '[0-9]+', ), 'defaults' => array( 'controller' => 'Album\Controller\Album', 'action' => 'index', ), ), ), ), ), ...
merci
Hors ligne
Bonjour,
Tout simplement en ajoutant 2 éléments.
1° l'emplacement du controller
2° La route (URL) associé a ce controller
'invokables' => array(
'Album\Controller\Album' => 'Album\Controller\AlbumController',
'Album\Controller\Toto' => 'Album\Controller\TotoController',
),
),
'router' => array(
'routes' => array(
'album' => array(
'type' => 'segment',
'options' => array(
'route' => '/album[/:action][/:id][/]',
'constraints' => array(
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
'id' => '[0-9]+',
),
'toto' => array(
'type' => 'segment',
'options' => array(
'route' => '/toto[/:action][/:id][/]',
'constraints' => array(
'action' => '[a-zA-Z][a-zA-Z0-9_-]*',
'id' => '[0-9]+',
),
'defaults' => array(
'controller' => 'Album\Controller\Toto',
'action' => 'index',
),
),
),
),
),
Hors ligne
Salut, sinon tu pouvais utiliser la recherche on a eu 2 fois la question la semaine dernière
Hors ligne
ok merci
j'ai remis en forme
return array( 'controllers' => array( 'invokables' => array( 'Album\Controller\Album' => 'Album\Controller\AlbumController', 'Album\Controller\Toto' => 'Album\Controller\TotoController', ), ), 'router' => array( 'routes' => array( 'album' => array( 'type' => 'segment', 'options' => array( 'route' => '/album[/:action][/:id][/]', 'constraints' => array( 'action' => '[a-zA-Z][a-zA-Z0-9_-]*', 'id' => '[0-9]+', ), 'defaults' => array( 'controller' => 'Album\Controller\Album', 'action' => 'index', ), ), ),// fin de album 'toto' => array( 'type' => 'segment', 'options' => array( 'route' => '/toto[/:action][/:id][/]', 'defaults' => array( 'controller' => 'Album\Controller\Toto', 'action' => 'index', ), ), ),// fin de toto ), ), 'view_manager' => array( 'template_path_stack' => array( 'album' => __DIR__ . '/../view', ), ), );
Orkin a écrit:
Salut, sinon tu pouvais utiliser la recherche on a eu 2 fois la question la semaine dernière wink
Je n'ai pas trouvé, si tu pouvais mettre les liens, pour les prochains visiteurs, merci
Hors ligne
http://www.z-f.fr/forum/viewtopic.php?id=8422
En voila au moins un
Hors ligne
bonjour,
J'essaye de passer la route de mon controlleur toto en literal
module / module.config.php : 'toto' => array( 'type' => 'literal', 'options' => array( 'route' => '/album/toto', 'defaults' => array( 'controller' => 'Album\Controller\Toto', 'action' => 'index', ), ),
l'adresse http://zf2/album/toto marche bien
mais avec la methode foo http://zf2/album/toto/foo ça marche pas.
merci
Hors ligne
/album/toto fonctionne puisque tu as défini la route dans ton fichier. Cela appelle le contrôleur toto et l'action index.
Si tu veux accéder à ton action foo dans le contrôleur toto, il faut définir une nouvelle route en spécifiant le même contrôleur mais cette fois ci en indiquant que l'action est foo.
Hors ligne