IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ORM PHP Discussion :

Transactions de Doctrine


Sujet :

ORM PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Avril 2009
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 78
    Par défaut Transactions de Doctrine
    Bonjour, Je suis à la lecons 17 de jobeet: http://www.symfony-project.org/jobee...Doctrine/fr/17
    exactement à la partie : Transactions de Doctrine

    Quand je met ce code dans mon jobbetJob.class.php:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    // lib/model/doctrine/JobeetJob.class.php
    public function save(Doctrine_Connection $conn = null)
    {
      // ...
     
      $conn = $conn ? $conn : JobeetJobTable::getConnection();
      $conn->beginTransaction();
      try
      {
        $ret = parent::save($conn);
     
        $this->updateLuceneIndex();
     
        $conn->commit();
     
        return $ret;
      }
      catch (Exception $e)
      {
        $conn->rollBack();
        throw $e;
      }
    }
    et que j'exécute cette commande:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    D:\web\php5\jobeet>symfony doctrine:data-load
    >> doctrine  Loading data fixtures from "D:\web\php5\jobeet\data/fixtures"
    >> doctrine  Loading data fixtures from "D:/...trineGuardPlugin/data/fixtures"
    PHP Strict Standards:  Non-static method Doctrine_Table::getConnection() should
    not be called statically, assuming $this from incompatible context in D:\web\php
    5\jobeet\lib\model\doctrine\JobeetJob.class.php on line 56
     
    Strict Standards: Non-static method Doctrine_Table::getConnection() should not b
    e called statically, assuming $this from incompatible context in D:\web\php5\job
    eet\lib\model\doctrine\JobeetJob.class.php on line 56
     
     
      Unknown record property / related component "_conn" on "JobeetJob"
    Pourtant j'ai suivi pas à pas ce cours.
    J'arrive pas a comprendre cette erreur
    Pourriez vous m'aider?
    Merci

  2. #2
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Le message signifie que la méthode getConnection ne peut être utilisée d'une manière statique.

    Hors, dans ton exemple, tu donnes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $conn = $conn ? $conn : JobeetJobTable::getConnection();
    avec :: pour appeler la méthode, ce qui est la manière d'appeler une méthode statique... CQFD.

    La solution est d'utiliser le code (tel qu'il est donné dans le cours...)
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $conn = $conn ? $conn : $this->getTable()->getConnection();
    avec -> pour appeler la méthode.

    Bonne chance,
    Michel

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2008
    Messages : 186
    Par défaut
    Essaie avec

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $conn = $conn ? $conn : $this->getTable()->getConnection();
    au lieu de
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $conn = $conn ? $conn : JobeetJobTable::getConnection();
    Dans le tuto il fait appel statique sur la fonction alors que celle-ci ne l'est pas, bonne continuation !


    Edit: Ah ben Mimi68 m'a devancé, tu as le choix maintenant !

  4. #4
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    En fait, j'ai consulté la version anglaise du tuto, qui est juste.

    Par contre, sur la traduction française, effectivement (je viens de vérifier), il y a un appel statique, ce qui est faux.

    Je vais ouvrir un "incident de traduction" de ce pas sur le site de symfony.


    ----------
    Incident signalé.

  5. #5
    Membre confirmé
    Inscrit en
    Avril 2009
    Messages
    78
    Détails du profil
    Informations forums :
    Inscription : Avril 2009
    Messages : 78
    Par défaut
    Bonjour,

    Merci pour vos réponses, j'ai corrigé l'erreur ca marche parfaitement...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Transaction et Doctrine
    Par pmithrandir dans le forum Doctrine2
    Réponses: 2
    Dernier message: 25/10/2013, 17h01
  2. gestion d'erreur et de transactions....
    Par Dge dans le forum MS SQL Server
    Réponses: 9
    Dernier message: 08/02/2006, 22h20
  3. Apropos des Transactions au sein d'un Stored Procedure
    Par Sarbacane dans le forum Connexion aux bases de données
    Réponses: 6
    Dernier message: 16/11/2004, 08h21
  4. [PostgreSQL]transactions
    Par adri1 dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 10/04/2003, 14h37
  5. Transaction avec DoCmd.runsql ???
    Par Gandalf24 dans le forum VBA Access
    Réponses: 29
    Dernier message: 11/02/2003, 20h35

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo