Bonjour,
l'utilisation d'une méthode définie via le class_loader ne fonctionne pas. La classe est introuvable.
J'ai fait une bidouille pour corriger:
Dans PMO_MyObject la methode internalfactory appelle getClassname().
Mais dans la classe PMO_MyTable la methode utilise un attribut qui n'est pas défini.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 public static function internalfactory(PMO_Table $table){ $classname = $table->getClassname(); if ($classname){ require_once(dirname(__FILE__).'/../class_loader/class_'.$classname.'.php'); $object = new $classname($table); }else{ $object = new PMO_MyObject($table); } return $object; }
En utilisant getTablename() à la place, c'est OK!
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5 public function getClassname(){ if(isset($this->table_classname)) return $this->table_classname; return FALSE; }
A noter que la doc indique toujours d'utiliser "extends MyObject" au lieu de "PMO_MyObject"
Partager