Bonjour,

Je suis actuellement en train de suivre le tutoriel CakePHP et j'ai un soucis au chapitre sur le Routing.

Ce que je fais

Comme dans la vidéo je créé une nouvelle route, mais celle-ci ne fonctionne pas.
Je ne pense pas qu'il soit nécessaire de vous donner mon code il est identique à la vidéo.

Ce que je veux

Que mes routes fonctionnent. Je pense avoir peut-être un problème de configuration.

Ce que j'obtiens

J'obtiens une erreur comme quoi mon action n'est pas définie (logique mais comme j'ai indiqué l'action dans la route ça doit rediriger).
J'ai aussi en page d'accueil du projet une erreur concernant l'url rewrite. J'ai suivi ce qui est indiqué dans la doc CakePHP mais je n'arrive pas à activer tout ça...
Pourtant dans un projet autre que CakePHP, j'utilise l'url rewriting et ça fonctionne très bien.

Si quelqu'un pouvait m'aider, ce serait sympa. Merci d'avance

4 réponses


Bonjour,
Pourrais-tu nous mettre le code stp, ce sera plus facile de régler ton problème !
Merci

Bonjour,

Voici ma route :

Router::connect('/ajouter', array('controller' => 'customers', 'action' => 'add'));

Mon controller customers existe et à l'intérieur j'ai une action add() que voici :

public function add() {

            if(!empty($this->request->data)) {
                $nom = $this->Customer->findByNom($this->request->data['Customer']['nom']);
                if(empty($nom)) {
                    $this->Customer->create($this->request->data, true);
                    $this->Customer->save(null, true, array('nom', 'societe', 'telephone', 'email'));
                    $id = $this->Customer->id;
                } else {
                    $id = $nom['Customer']['id'];
                }

                $this->set(compact('id'));
                $this->render('add-success');
            }
        }

Et puis bien sur j'ai la vue qui correspond mais je ne suis pas sur que ce soit utile de la mettre.
Merci d'avoir pris le temps de me répondre.

Est-ce que ton controller custumers est-il bien déclaré ? Avec le bon nom et le bon namespace ?

Oui bien sur j'ai ça :

class CustomersController extends AppController {
    public function add() {

            if(!empty($this->request->data)) {
                $nom = $this->Customer->findByNom($this->request->data['Customer']['nom']);
                if(empty($nom)) {
                    $this->Customer->create($this->request->data, true);
                    $this->Customer->save(null, true, array('nom', 'societe', 'telephone', 'email'));
                    $id = $this->Customer->id;
                } else {
                    $id = $nom['Customer']['id'];
                }

                $this->set(compact('id'));
                $this->render('add-success');
            }
        }
}