Maximum function nesting level of '200'

Par cmoualis, il y a 13 ans


Bonjour tous le monde,

Dans mon Model Client:

public $actsAs=array('Containable');
    public $belongsTo=array('Ville','Specialite','Category');
    public $hasAndBelongsToMany=array('User');

et lorsque j'effectue un afterSave

function afterSave($created) {

    if(!empty($this->data'Client']'id'])){

        $this->saveField('processed',true);
    }

   }

j'ai l'erreur suivante une sorte de boucle infini:

Fatal error: Maximum function nesting level of '200' reached, aborting! in /var/www/cakePHP/lib/Cake/Model/ConnectionManager.php on line 3233

sachant que j'ai changé le : xdebug.max_nesting_level=200;

Si quelqu'un est tombé sur ce problème merci d'avance pour votre réponse.

2 réponses

Maenhyr, il y a 13 ans

D'après ton système, tu fais un save() qui appelle un afterSave(), qui appelle un saveField(). Hors ce saveField est tout simplement un save().

Donc tu as une boucle save() -> afterSave() -> save() -> afterSave() pour le même objet.

cmoualis, il y a 13 ans

Merci beaucoup prbaron c'est exactement ça