Vraiment bizarre :/
Voici la méthode show
function show($id = null,$slug = null){
if(!$id)
throw new NotFoundException('Aucune page ne correspond à cet ID');
$page = $this->Post->find('first',array(
'conditions' => array('id' =>$id,'type'=>'post')
));
if(empty($page))
throw new NotFoundException('Aucune page ne correspond à cet ID');
if($slug != $page'Post']'slug'])
$this->redirect($page'Post']'link'],301);
$d'page'] = current($page);
$this->set($d);
}
Oui j'ai d'autres routes, qui marche très bien!
Router::connect('/', array('controller' => 'Cartes', 'action' => 'index'));
Router::connect('/admin',array('controller'=>'posts','action'=>'index','admin'=>true));
Router::connect('/posts/:slug-:id',array('controller'=>'posts','action'=>'show'),array(
'pass'=> array('slug','id'), 'slug'=>'[a-z0-9\-]+','id' =>'[0-9]+'));
Router::connect('/regions/:slug/:id',array('controller'=>'posts','action'=>'produit'),array(
'pass'=> array('slug','id'), 'slug'=>'[a-z0-9\-]+','id' =>'[0-9]+'));
Router::connect('/regions/:slug/:id/:slug2/:id2',array('controller'=>'posts','action'=>'article'),array(
'pass'=> array('slug','slug2','id'), 'slug'=>'[a-z0-9\-]+','slug2'=>'[a-z0-9\-]+','id' =>'[0-9]+'));
Et je suis en localhost donc l'url c'est juste localhost avant!
Peut être une erreur autre par que sur les routes ?
Merci de l'aide en tout cas!