Bonjour,

Voila je rencontre un petit problème avec mon code.

j'essaie de creer un projet symfony avec une base dejà existante ,
de recuperer les entities et surtout les repositories ,
en suivant la doc symfony ( et ca marche pas pour les repository )

Contexte :
windows 7
wamp
repertoire Applications/www
base mysql nommee blog , elle contient deux tables blog_comment et blog_post
chacune a une cle primaire id

creation du projet
C:\Applications\www
composer create-project symfony/framework-standard-edition abcd
projet créé , il y a toute l'arborescence C:\Applications\www\abcd\src\AppBundle\Controller ( par exemple )

creation d'un bundle nommé onycroit
C:\Applications\www\abcd
php bin/console generate:bundle
( multiple appli ) no - enter
( bundle name ) onycroitBundle - enter
( target dir src ) enter
( format annotation ) enter
bundle créé , on a l'arbo : C:\Applications\www\abcd\src\onycroitBundle\Resources\config ( exemple )

la doc dit qu il faut faire ce mapping :
C:\Applications\www\abcd
php bin/console doctrine:mapping:import --force onycroitBundle xml
ca cree effectivement le repertoire C:\Applications\www\abcd\src\onycroitBundle\Resources\config\doctrine
et dedans il y a BlogPost.orm.xml et BlogComment.orm.xml
<?xml version="1.0" encoding="utf-8"?>
<doctrine-mapping xmlns="http://doctrine-project.org/schemas/orm/doctrine-mapping" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://doctrine-project.org/schemas/orm/doctrine-mapping http://doctrine-project.org/schemas/orm/doctrine-mapping.xsd">
<entity name="onycroitBundle\Entity\BlogPost" table="blog_post">
<id name="id" type="bigint" column="id">
<generator strategy="IDENTITY"/>
</id>......

la doc dit de faire
php bin/console doctrine:mapping:convert annotation ./src
ca marche on a le repertoire C:\Applications\www\abcd\src\onycroitBundle\Entity
dedans il y a BlogPost.php et BlogComment.php qui commence par
<?php

namespace onycroitBundle\Entity;

use Doctrine\ORM\Mapping as ORM;

/**

  • BlogPost
  • @ORM\Table(name="blog_post")
  • @ORM\Entity
    */
    !!!! et il ny a pas de ligne du genre @ORM\Entity(repositoryClass= ... !!!!
    mais jai suivi la doc symfony ...

    on lance les entities en esperant recuperer aussi les repository
    php bin/console doctrine:generate:entities onycroitBundle
    ca repond ca :
    Generating entities for bundle "onycroitBundle"

    backing up BlogComment.php to BlogComment.php~
    generating onycroitBundle\Entity\BlogComment
    backing up BlogPost.php to BlogPost.php~
    generating onycroitBundle\Entity\BlogPost
    Mais ca n'a pas cree de repository comme ca faisait avec la commande entity si la base nexiste pas dejà ....

    et si je rajoute à toute force la ligne @ORM\Entity(repositoryClass= .
    quand je relance entities , ca regenere BlogPost.php ... mais sans cette ligne , et pas de repository

    je sais pas comment faire, help

1 réponse


Merci de formater le sujet en utilisant la syntaxe markdown.