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

Symfony PHP Discussion :

Les entités (tables) sous Symfony 2


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre chevronné Avatar de roster
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 397
    Par défaut Les entités (tables) sous Symfony 2
    Bonjour,

    Je n'arrive pas à générer les entités depuis la console windows sous la version PR5.

    Pour résumer: {depuis le prompt principal sandbox}
    - je crée un bundle:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    php app/console init:bundle Application\MyBundle
    Cette commande fonctionne, mon bundle est créé dans le répertoire 'sandbox\src\Application\MyBundle'.

    -je créé ensuite un répertoire Entity dans le rep MyBundle. J'y ajoute le fichier Actor.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
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    <?php
    //path => C:\wamp\www\sandbox\src\Application\MyBundle\Entity\Actor.php
    <?php
    namespace Application\MyBundle\Entity;
     
    /**
     * @orm:Entity
     */
     
    class Actor
    {
        /**
         * @orm:Id
         * @orm:Column(type="integer")
         * @orm:GeneratedValue(strategy="IDENTITY")
         *
         */
        protected $id;
     
        /**
         * @orm:Column(type="string", length="255")
         *
         */
        protected $firstname;
     
        /**
         * @orm:Column(type="string", length="255", nullable=false)
         *
         */
        protected $lastname;
     
        /**
         * @orm:Column(type="integer")
         *
         */
        protected $birth_year ;
     
    }
    -enfin, j'essais de créer les setters/getters pour cette classe avec la commande:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    php app/console doctrine:generate:entities
    Mais rien ne se passe, aucun message d'erreur.

    J'ai essayé avec les différentes options:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    php app/console doctrine:generate:entities --bundle="Application\MyBundle"
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    php app/console doctrine:generate:entities --bundle="Application\MyBundle" --entity="Actor"
    J'ai essayé également en jouant sur les paths du bundle et de l'entity ou en supprimant les apostrophes, mais toujours pour un résultat semblable, ma classe Actor n'est jamais modifiée.

    La commande suivante affiche le message comme quoi l'entité a bien était générée, mais la classe Actor n'est toujours pas modifiée:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    php app/console doctrine:generate:entity "Application\MyBundle" "Actor"
    Un fichier "Application.ElaoBundle.Entity.Actor.dcm.xml" est bien crée dans "C:\wamp\www\sandbox\src\Application\MyBundle\Resources\config\doctrine\metadata\orm", mais à partir de là je bloque.

    D'où ma question:
    Quelle est la commande exacte dans mon exemple pour générer les entités de classes sous windows pour la version PR5?

    Merci à vous.

  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
    Je fais les mêmes essais, mais depuis un fichier yml.

    Bon, c'est pas encore gagné.

    Le premier qui trouve gagne un an d'abonnement au magazine de DVP. Quoi, c'est gratuit ! Pas de chance

  3. #3
    Membre chevronné Avatar de roster
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 397
    Par défaut
    Les commandes utilisées sont en tout cas celles fournies par la doc.

    Le problème vient visiblement de getDoctrineEntityManagers() appelé depuis getBundleMetadatas qui chez moi est toujours null.

    Du coups, la condition
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    //C:\wamp\www\sandbox\src\vendor\symfony\src\Symfony\Bundle\DoctrineBundle\Command\GenerateEntitiesDoctrineCommand.php
     
    if ($metadatas = $this->getBundleMetadatas($bundle)) {...}
    n'est jamais remplie.

    Je ne sais pas exactement à quoi correspond un EntityManager, j'ai donc beaucoup de mal à voir où se situe exactement le problème.

    J'ai partiellement modifié les replace pour les paths comme suggéré sur le web, mais cela n'a rien changé:
    http://osdir.com/ml/symfony-users/2011-01/msg00085.html



    PS:Entre parenthèse, je n'arrive toujours pas à configurer correctement xdebug pour faire fonctionner les points d'arrêts sous Netbeans6.9.1 en php 5.3.5, donc pas terrible pour le debuggage.

  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
    Pas de bonnes nouvelles,

    J'ai travaillé sur Twig cette après-midi, le base peut-être demain.

    As-tu bien la toute dernière version de la 2 ?

    Pour xdebug, je ne suis jamais arrivé à connecter netbeans (ou eclipse, ou phpedit) je me contente d'avoir plus d'informations dans les écrans d'erreur. C'est sur qu'avec des points d'arrêt, comprendre du php 5.3 objet et namespace doit être plus simple. Peut-être

  5. #5
    Membre chevronné Avatar de roster
    Profil pro
    Inscrit en
    Décembre 2008
    Messages
    397
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2008
    Messages : 397
    Par défaut
    Bonjour,
    J'ai mis-à-jour les vendors, il y a eu quelques changements comme la création des ressources qui fonctionne mais je n'arrive toujours pas à obtenir le résultat escompté.
    Comme je ne sais pas trop s'il s'agit d'un soucis au niveau de ma méthodologie, symfony ou doctrine, je mets ce problème de coté en attendant vu que j'ai pas mal d'autre chose à voir.{Twig, par exemple}

    Je laisse ce topic ouvert, sait-on jamais...

  6. #6
    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
    Je confirme pour les choses a voir sur Twigs, mais là, cela semble bien marcher, même s'il faut prendre de nouvelles habitudes.

    Par contre, as-tu testé avec un fichier en yaml pour la création de la base ?

    Dans les choses a découvrir aussi : tout le système intégré de gestion de la sécurité. Une belle usine (pas encore de qualificatif) mais loin d'être simple à mettre en œuvre.

Discussions similaires

  1. problème de bordure avec les tables sous IE
    Par Silvia12 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 6
    Dernier message: 28/09/2007, 10h45
  2. Réponses: 2
    Dernier message: 23/07/2007, 14h12
  3. Réponses: 18
    Dernier message: 11/07/2007, 17h38
  4. Réponses: 5
    Dernier message: 10/07/2007, 09h43
  5. pb sur les tables sous oracle
    Par pepsister dans le forum Administration
    Réponses: 6
    Dernier message: 09/11/2006, 21h56

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