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 :

Erreur propel build-schema


Sujet :

ORM PHP

  1. #1
    Membre habitué Avatar de Romanops
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2002
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 278
    Points : 165
    Points
    165
    Par défaut Erreur propel build-schema
    Bonjour !

    Je cherche à brancher mon application symfony (utilisée avec propel) à une base de données HyperFile accessible via odbc. J'ai des tests en php sans utilisé symfony pour l'accès à la base de données via odbc - j'ai utilisé le driver pdo_odbc et la commande odbc_connect($v_DNS,$v_Utilisateur,$v_Mdp); pour la connexion par exemple. Tout fonctionne à merveille !

    Maintenant que les tests sont fait, je voudrais développer mon application complète sous symfony en utilisant propel (j'ai d'abord fait des tests avec Doctrine, mais ça ne fonctionne pas du tout, apparemment Doctrine ne supporte pas odbc :-( )

    Mais voilà, une fois mon projet créé (via ligne de commande sous cygdrive car je suis sur windows), je voudrais faire une retroconception de la base de données existante (elle a été créé bien avant que j'arrive dans l'entreprise, je n'ai pas possibilité de la créer moi même car il y a une cinquantaine de tables, de plus, c'est une base hyperfile pour une application client/serveur qui tourne déjà).

    Pour ce faire, j'utilise la commande php symfony propel:build-schema mais il me sort l'erreur suivante :
    >> propel Running "reverse" phing task
    [propel-scema-reverse] There was an error building XML from metadata: could not find driver

    Some problems occured when executing the task:
    If the exception message is not clear enough, read the output of the task for more information
    D'après ce que je comprends de l'erreur, Propel ne trouve pas le driver seulement dans mon fichier php.ini, le driver pdo_odbc est bien activé, de plus les tests fait sous php ont fonctionné comme sus-mentionné.

    Pour la configuration du fichier databases.yml & propel.ini, j'ai utilisé la commande suivante :
    php symfony configure:database "odbc:PROGIDOC_V5.5" admin(ps: il n'y a pas de mot de passe pour l'accès à la config odbc pour le moment)
    Peut-être ai-je fait une erreur dans la config ???

    Voici le fichier databases.yml généré :
    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
    dev:
      propel:
        param:
          classname: DebugPDO
          debug: { realmemoryusage: true, details: { time: { enabled:true }, slow: { enabled: true, threshold: 0.1 }, mem: { enabled: true }, mempeak: { enabled: true }, memdelta: { enabled: true } } }
    test:
      propel:
        param:
          classname: DebugPDO
    all:
      propel:
        class: sfPropelDatabase
        param:
          classname: PropelPDO
          dsn: 'obdc:PROGIDOC_V5.5'
          username: admin
          password: null
          encoding: utf8
          persistent: true
          pooling: true

    Et voici le fichier propel.ini généré :
    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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    propel.targetPackage       = lib.model
    propel.packageObjectModel  = true
    propel.project             = progidoc
    propel.database            = obdc
    propel.database.driver     = obdc
    propel.database.url        = obdc:PROGIDOC_V5.5
    propel.database.creole.url = ${propel.database.url}
    propel.database.user       = admin
    propel.database.password   =
     
     
    ; mysql options
    propel.mysql.tableType     = InnoDB
     
    propel.addVendorInfo       = true
    propel.addGenericAccessors = true
    propel.addGenericMutators  = true
    propel.addTimeStamp        = true
    propel.addValidators       = false
    propel.addIncludes         = false
     
    propel.useDateTimeClass       = true
    propel.defaultTimeStampFormat = Y-m-d H:i:s
    propel.defaultTimeFormat      = H:i:s
    propel.defaultDateFormat      = Y-m-d
     
    propel.schema.validate        = false
    propel.samePhpName            = false
    propel.disableIdentifierQuoting     = false
    propel.emulateForeignKeyConstraints = true
     
    ; directories
    propel.home                    = .
    propel.output.dir              = D:\php\progidoc
    propel.schema.dir              = ${propel.output.dir}/config
    propel.conf.dir                = ${propel.output.dir}/config
    propel.phpconf.dir             = ${propel.output.dir}/config
    propel.sql.dir                 = ${propel.output.dir}/data/sql
    propel.runtime.conf.file       = runtime-conf.xml
    propel.php.dir                 = ${propel.output.dir}
    propel.default.schema.basename = schema
    propel.datadump.mapper.from    = *schema.xml
    propel.datadump.mapper.to      = *data.xml
     
    propel.builder.addComments  = true
    propel.builder.addBehaviors = true
     
    ; behaviors
    propel.behavior.default                        = symfony,symfony_i18n
    propel.behavior.symfony.class                  = plugins.sfPropelPlugin.lib.behavior.SfPropelBehaviorSymfony
    propel.behavior.symfony_i18n.class             = plugins.sfPropelPlugin.lib.behavior.SfPropelBehaviorI18n
    propel.behavior.symfony_i18n_translation.class = plugins.sfPropelPlugin.lib.behavior.SfPropelBehaviorI18nTranslation
    propel.behavior.symfony_behaviors.class        = plugins.sfPropelPlugin.lib.behavior.SfPropelBehaviorSymfonyBehaviors
    propel.behavior.symfony_timestampable.class    = plugins.sfPropelPlugin.lib.behavior.SfPropelBehaviorTimestampable









    Pouvez-vous m'aider ??

    Merci d'avance !!

  2. #2
    Membre habitué Avatar de Maerlyn31
    Homme Profil pro
    Développeur Web
    Inscrit en
    Mai 2011
    Messages
    71
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2011
    Messages : 71
    Points : 167
    Points
    167
    Par défaut
    Alors je n'ai jamais utilisé ni Propel ni HyperFile, mais quelque chose dans ton message m'a mis la puce à l'oreille :

    Tu dis que ton driver pdo_odbc est activé dans php.ini, mais il faut savoir que selon les install de PHP, le CLI de Symfony utilise souvent un php.ini différent de celui utilisé par Apache pour le rendu de pages web. Peut-être une piste à creuser ...

    Bon courage à toi en tout cas, tu m'as l'air embarqué dans une drôle d'aventure ^^

  3. #3
    Membre habitué Avatar de Romanops
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Octobre 2002
    Messages
    278
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2002
    Messages : 278
    Points : 165
    Points
    165
    Par défaut
    Bonjour et merci pour ta réponse.

    J'ai bien deux fichiers ini sur mon serveur, mais ils sont tous les deux liés à Wamp et ont tous les deux la bonne configuration, concernant le pdo_odbc du moins.

    Bon courage à toi en tout cas, tu m'as l'air embarqué dans une drôle d'aventure ^^
    En effet, merci ! ^^

Discussions similaires

  1. [1.x] Erreur sur propel:build --all
    Par Bizoo dans le forum Symfony
    Réponses: 7
    Dernier message: 29/11/2010, 19h37
  2. Erreur sur doctrine:build-schema
    Par death6666 dans le forum ORM
    Réponses: 9
    Dernier message: 27/09/2010, 01h21
  3. [1.x] Erreur propel-build-model dans schema.yml?
    Par charliejo dans le forum Symfony
    Réponses: 2
    Dernier message: 19/10/2009, 14h07
  4. Réponses: 7
    Dernier message: 16/04/2009, 13h02
  5. [1.x] Message d'erreur avec symfony propel-build-model
    Par thewind1 dans le forum Symfony
    Réponses: 6
    Dernier message: 03/04/2008, 18h09

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