Précédent   Forum des professionnels en informatique > PHP > Outils > Zend > Zend Framework > Zend_Db
Zend_Db Forum d'entraide pour le composant Zend_Db du Zend Framework (création de requêtes, abstraction, ORM etc.). Avant de poster -> FAQ Zend_Db.
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 07/08/2007, 10h26   #1
Candidat au titre de Membre du Club
 
Inscription : juillet 2006
Messages : 17
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 17
Points : 11
Points : 11
Par défaut [Zend_Db_Table_Abstract][ZF.1.0.1] Extending the Row class

Bonjour,


j'essaie en vain depuis plusieurs jours d'etendre la class Zend_Db_Table_Row_Abstract (comme dans l'exemple de la doc http://framework.zend.com/manual/fr/....row.extending

La classe row est bien pris en compte qd je fais un debug, mais il semble que le code ne soit pas exécuté...

Code :
1
2
3
4
5
6
 
//row class est défini dans la classe Table 
//classes bien chargées
 
$table = new Table ();
$table->insert($data);
les données s'insèrent bien mais le code dans ma méthode _insert() de ma row class ne s'execute pas, rien ( même pas un gros var_dump()... )

Je ne vois pas d'où ça peut venir, j'ai décortiqué la classe Db_Table_Abstract et Table_Row_Abstract de la librairie Zend mais pas vu le problème

je dois passer à côté d'un énorme truc je pense mais je vois pas

Merci de votre aide
_julz_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 11h16   #2
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Salut

Tu peux consulter les ateliers de Julien pour t'inspirer.
Tu as sans doute une erreur quelque part, as-tu vérifié les logs ?
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 13h01   #3
Candidat au titre de Membre du Club
 
Inscription : juillet 2006
Messages : 17
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 17
Points : 11
Points : 11
je regarde régulièrement les ateliers et autres tutoriels pour voir ce que je pourrais améliorer.
J'utilise le framework depuis la version 0.2 ( il y en a eu des evolutions! ) et j'en suis très content.
Mais là pour cette heritage bien pratique pour les logs justement ca bloque

mon log contenu dans cette classe fonctionne très bien qd je l'utilise en dehors alors ca ne vient pas de ça

personne ne l'a déjà utilisé ?
_julz_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 22h12   #4
Candidat au titre de Membre du Club
 
Inscription : juillet 2006
Messages : 17
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 17
Points : 11
Points : 11
j'ai fouillé encore un peu
et en faisant comme ca, ca marche

Code :
1
2
3
4
5
$table = new Table();
$row = $table->createRow();
$row->users_id = 54;
$row->status = 1;
$row->save();
c'est pas pratique et normalement ca doit marcher en redefinissant la méthode insert dans la classe Table... comme dans l'exemple de la doc

Comprends toujours pas pourquoi
_julz_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 07/08/2007, 23h08   #5
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
Tout dépend de ce que tu as mis dans le corps de ta méthode insert()
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/08/2007, 08h16   #6
Candidat au titre de Membre du Club
 
Inscription : juillet 2006
Messages : 17
Détails du profil
Informations forums :
Inscription : juillet 2006
Messages : 17
Points : 11
Points : 11
je mets le code de mes deux classes

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
 
require_once "Zend/Db/Table/Abstract.php";
 
class Nodes extends Zend_Db_Table_Abstract
{
 
    protected $_name = 'jf_nodes';
    protected $_primary = 'id_nodes';
 
    protected $_rowClass = 'LoggingRow';
 
    function insert(array $data){  
        // add a timestamp
        if (empty($data['creation'])) {
            $data['creation'] = time();
        }
        if (empty($data['modification'])) {
            $data['modification'] = time();
        }
    parent::insert($data);
}
 
 
require_once "Zend/Db/Table/Row/Abstract.php";
 
class LoggingRow extends Zend_Db_Table_Row_Abstract
{
    protected function _insert()
    {
    	print "!!!!!!!!!!!!!!!!!!!";
    	//log de la requete db
       	$log = Zend_Registry::get('logDb');
        $log->info($this->_data . "INSERT: $this->_tableClass");
    }
}
_julz_ est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/08/2007, 17h38   #7
Rédacteur
 
Avatar de Yogui
 
Homme Guillaume Rossolini
Directeur technique
Inscription : février 2004
Messages : 13 720
Détails du profil
Informations personnelles :
Nom : Homme Guillaume Rossolini
Localisation : France

Informations professionnelles :
Activité : Directeur technique

Informations forums :
Inscription : février 2004
Messages : 13 720
Points : 17 355
Points : 17 355
insert() ne prend pas de paramètre, si ?
__________________
Mes articles - Zend Certified Engineer (PHP + Zend Framework)
Ressources PHP - Ressources Zend Framework
Yogui est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 08h45.


 
 
 
 
Partenaires

Hébergement Web