Zend FR

Consultez la FAQ sur le ZF avant de poster une question

Vous n'êtes pas identifié.

#1 12-12-2008 14:58:17

Plopix
Nouveau membre
Date d'inscription: 05-12-2008
Messages: 4

[Zend_Router] Route générique filtrée

Bonjour,

D'abord je pense qu'il faut que je vous dise que je suis un gros débutant sur ZF, 4 jours pas plus d'ancienneté...

Et donc, j'ai du mal avec le router. Voila ce que je voudrais.

J'ai les routes par défaut qui me conviennent parfaitement : /module/controller/action/param1/value1 etc...

Ce que je voudrais c'est rajouter une route pour supprimer de l'url le "param1". Pour avoir une url du type :

Code:

/module/controller/action/8 ou /controller/action/8

Aussi, je voudrais pouvoir faire :

Code:

/module/controller/action/version/12 ou /controller/action/version/12

Dans ce cas retrouver le comportement par défaut.

Je pense qu'il faut utiliser le router avec Regexp mais j'aimerais un peu d'aide.
Voici mon code :

Code:

$router = Zend_Controller_Front::getInstance()->getRouter();
        $router->addRoute(
                "basic",
                new Zend_Controller_Router_Route(
                    "*/:controller/:action/:id/*"
            )
        );

Il faudrait que je puisse tester pour etre sur que "id" est [0-9]

Merci d'avance;)

Hors ligne

 

#2 12-12-2008 16:28:21

philippe
Administrateur
Lieu: Grenoble
Date d'inscription: 01-03-2007
Messages: 1624

Re: [Zend_Router] Route générique filtrée

perdu, c'est sans les regexp la syntaxe si tu prends crée une route standard :

Code:

$router->addRoute(
                "basic",
                new Zend_Controller_Router_Route(
                    ":controller/:action/:id"
            )
        );

A+, Philippe


twitter : @plv ; kitpages.fr : Création de sites internet à Grenoble et Paris

Hors ligne

 

#3 12-12-2008 16:58:34

Plopix
Nouveau membre
Date d'inscription: 05-12-2008
Messages: 4

Re: [Zend_Router] Route générique filtrée

Merci de cette réponse, cependant du coup, je me demande si j'ai été clair.

Avec ce code cette url (avec le module) ne fonctionne pas, je ne renvoie pas id=8 dans le getParam

Code:

/default/index/index/8

Autre exemple :  ne renvoie ni le id=8 mais 8=version

Code:

/index/index/8/version/12

En fait j'avais mis des * devant et derrière pour pallier ces problèmes, la derniere chose qui me manque c'est de tester le 8 pour remplir ou non la variable "id" (si c'est un nombre ou non)

C'est plus clair ? (autrement, est-ce que les étoiles sont une bonne chose )


Merci

Dernière modification par Plopix (12-12-2008 16:59:29)

Hors ligne

 

#4 15-12-2008 09:54:43

nORKy
Membre
Date d'inscription: 06-03-2008
Messages: 1098

Re: [Zend_Router] Route générique filtrée

C'est que ta route n'a pas été reconnu

Dans ton premier cas, il manque pt etre :module
et dans le deuxième, ca ne correspond pas non plus
(version et 12 ne sont pas reconnu)
Dans le dernier cas, si tu ne connais pas le nombre de paramètre, il faut utiliser * dans ta route


----
Gruiiik !

Hors ligne

 

Pied de page des forums

Propulsé par PunBB
© Copyright 2002–2005 Rickard Andersson
Traduction par punbb.fr

Graphisme réalisé par l'agence Rodolphe Eveilleau
Développement par Kitpages