Bonjour,
j'ai un problème de route que je ne comprends pas, les paramètres sont bien passé mais j'ai l'erreur suivante que j'ai du mal à comprendre.
voici le code du route

Router::connect('/users/:country/:id-:slug',array('controller'=>'Users','action'=>'view'),array('pass' => array('country','id','slug'),'slug'=>'[A-Z]+','id' =>'[0-9]+','slug'=>"[a-z0-9_\-]+"));

l'erreur générée est la suivante:
Missing Method in UsersController

Error: The action AS is not defined in controller UsersController
Error: Create UsersController::AS() in file: app/Controller/UsersController.php.
le paramètre country est consideré comme une action j'ai du mal à saisi d'où vient l'erreur. merci

2 réponses


Bonsoir.
C'est normal, tu définis 2 fois la structure pour le slug, mais pas une seule fois pour country :

'slug'=>'[A-Z]+','id' =>'[0-9]+','slug'=>"[a-z0-9_\-]+"

Du coup, à l'emplacement de la valeur pour :country, s'il détecte AS, il pense que c'est le nom d'une action, car le routing n'est pas respecté.

wenz
Auteur

Merci lartak pour ta réponse, mais cj'ai toujours la même erreur après avoir corrigé, mais AS est toujours considéreé comme une action