Partage
  • Partager sur Facebook
  • Partager sur Twitter

Symfony 4.2 Génération entité d'une seconde bdd

    14 février 2019 à 14:40:57

    Yo tout le monde

    Alors, j'ai un soucis avec doctrine :

    Je suis en train de crée une appli symfony avec une base de données par défaut que j'ai créé via doctrine et les entités que j'ai créé pour l'occasion.

    Cependant, je dois maintenant mettre en place une fonctionnalité qui utilise une base de données à part.

    J'ai gérer le .env et la conf yaml pour prendre en compte cette seconde bdd mais mon soucis c'est que je dois générer mes entité par rapport à la base de données déjà existante. J'ai trouvé une commande pour ça mais le problème c'est qu'elle prend en compte ma bdd par défault donc celle créé par symfony alors que je veux qu'elle utilise l'autre bdd que je viens d'intégrer au projet

    Voilà mon .env :

    DATABASE_URL="pgsql://user:motdepasse@host/bdd"
    GEOPTIC_URL="pgsql://user:motdepasse@host/bdd"

    j'ai bien sur les bonne infos pour me co à la bdd

    Mon doctrine.yaml : 

    doctrine:
        dbal:
            default_connection: default
            connections:
                default:
                    # configure these for your database server
                    driver: 'pdo_pgsql'
                    charset: utf8
                    server_version: '9.5.14'
    
                    url: '%env(resolve:DATABASE_URL)%'
                geoptic:
                    # configure these for your database server
                    driver: 'pdo_pgsql'
                    charset: utf8
                    server_version: '9.5.14'
    
                    url: '%env(resolve:GEOPTIC_URL)%'
        orm:
            default_entity_manager: default
            entity_managers:
                default:
                    connection: default
                    naming_strategy: doctrine.orm.naming_strategy.underscore
                    auto_mapping: true
                    mappings:
                        App:
                            is_bundle: false
                            type: annotation
                            dir: '%kernel.project_dir%/src/Entity/Main'
                            prefix: 'App\Entity\Main'
                            alias: AppDefault
                geoptic:
                    connection: geoptic
                    naming_strategy: doctrine.orm.naming_strategy.underscore
                    auto_mapping: false
                    mappings:
                        App:
                            is_bundle: false
                            type: annotation
                            dir: '%kernel.project_dir%/src/Entity/Geoptic'
                            prefix: 'App\Entity\Geoptic'
                            alias: AppGeoptic

    et la commande que je lance pour générer les entités :

    bin/console doctrine:mapping:import "App\Entity\Geoptic" annotation --path=src/Entity/Geoptic --em=geoptic

    Je pense qu'il manque une option dans la commande pour lui dire de prendre la bonne base de données

    Merci d'avance pour votre aide !



    • Partager sur Facebook
    • Partager sur Twitter
      15 février 2019 à 9:23:16

      Bonjour,

      Cette doc je l'ai déjà suivi pour mettre à jour doctrine.yaml et .env mais c'est pour après, quand je veux récupéré une base déjà créée et la transformé en entités. Pour l'instant je suis reparti de zéro en créeant une nouvelle base avec des entitées via Symfony

      • Partager sur Facebook
      • Partager sur Twitter

      Symfony 4.2 Génération entité d'une seconde bdd

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown