Bonjour,

J'essaye de reproduire ce tutoriel: http://www.grafikart.fr/tutoriels/cakephp/dev-site-jour1-191
mais avec cakephp 3. Je n'arrive pas à faire fonctionner la fonction beforeFind sur l'Entity.
J'ai tout essayé dans les paramètres, je n'arrive pas à récupérer les données de mon find comme dans la video à 29 minutes.

Moi j'ai:

<?php
namespace App\Model\Table;

use Cake\Event\Event;
use Cake\ORM\Table;

class PagesTable extends Table{

    public function beforeFind(Event $data){
    var_dump($data);
}
}

Cela me retourne une erreur:

Fatal error: Maximum function nesting level of '100' reached, aborting! in /Applications/MAMP/htdocs/cakephp3/vendor/cakephp/cakephp/src/ORM/Table.php on line 2189

Merci de m'éclairer!

4 réponses


Je précise que j'ai également testé:

class PagesTable extends Table{

    public function beforeFind(Event $event, Query $data){
    var_dump($data);

}
}

Toujours la même erreur.

Bonjour,

j'ai bien le même comportement que toi sur Cake 3 (3.0.9). Je ne sais pas d'où ça vient, par contre je peux bien utiliser la variable contenant la query.

Il semblerait que l'affichage créé une boucle infinie

Et si tu met un : parent::beforeFind() dedans ?

Il n'existe pas de beforeFind dans Table. Du coup ça donne une erreur.