Bonjour,
Avant de poser cette question j'ai quelque peu farfouillé, j'ai trouvé une piste mais je ne m'en sors pas...
J'expose donc mon cas :

J'ai suivi à la lettre le tuto sur la console, seulement au moment d'ajouter un post dans la partie "admin" j'ai l'erreur suivante :

Fatal error: Call to a member function find() on a non-object in C:\wamp\www\cakephp\app\Controller\PostsController.php on line 50

Le code de la fonction incriminée

/**
 * admin_add method
 *
 * @return void
 */
    public function admin_add() {
        if ($this->request->is('post')) {
            $this->Post->create();
            if ($this->Post->save($this->request->data)) {
                $this->Session->setFlash(__('The post has been saved'));
                $this->redirect(array('action' => 'index'));
            } else {
                $this->Session->setFlash(__('The post could not be saved. Please, try again.'));
            }
        }
        $categories = $this->Category->find('list');
        $this->set(compact('categories'));
    }

Je précise que l'ajout de catégorie bizzarement lui, fonctionne, alors j'avais trouvé l'astuce d'ajouter :

public $uses = 'Category';

Qui ne plante plus la page et me permet de voir le formulaire, seulement quand je valide le formulaire, rebelote, j'ai le même genre d'erreur qui font surface :

Call to a member function create() on a non-object in C:\wamp\www\cakephp\app\Controller\PostsController.php on line 43

Si je supprime la ligne, j'obtiens :

Call to a member function save() on a non-object in C:\wamp\www\cakephp\app\Controller\PostsController.php on line 44

Le code est celui de la fonction juste au dessus... est ce que ça pourrait venir de la version de CakePHP ?

Merçi de vos réponses !

1 réponse


Davidou2a
Auteur
Réponse acceptée

Réponse trouvée... j'avais mis un champ "categories_id" en clé primaire et non "category_id" (Merçi a MySQL Workbench)

@+