Menu

Symfony 3 Générer une copie d'une entité [Fermé]

Messages postés
991
Date d'inscription
mercredi 20 février 2013
Statut
Membre
Dernière intervention
24 novembre 2018
-
Bonjour,

Je développe mon premier vrai projet sous Symfony 3, j'aurai besoin des lumières d'une âme charitable.

Mon projet contient un grand nombre de formulaires, dans ces derniers j'utilise des collections au niveau de mes tableaux contenant des radio button ainsi que des champs texte.

Il se trouve que plusieurs de mes collections sont visuellement identiques mais ne représentent pas les mêmes entités.

Je me suis vite retrouvé à copier coller les classes, classeRepository, classeType etc.

Je cherche un moyen de générer automatiquement dans l'arborescence une sorte de copie d'une classe (mêmes attributs, méthodes etc.) avec l'ensemble des fichiers qui y sont liés en changeant uniquement le nom de la classe qui sera présente dans l'ensemble des noms des fichiers liés. Cela me ferait gagner un temps énorme.

En espérant que je me sois exprimé correctement sur le besoin, si quelqu'un à une solution, une source ou quelque chose.
Merci d'avance.

Cordialement,

--
Afficher la suite 

1 réponse

Messages postés
8563
Date d'inscription
jeudi 22 mars 2007
Statut
Contributeur
Dernière intervention
18 juillet 2018
1162
0
Merci
Salut,

avant de commencer, je tiens juste à préciser que la version stable actuelle est la 4.1 et je trouve qu'elle présente de nombreux avantages à la 3.

Tu utilises la console pour générer tes entités ? Si ce n'est pas le cas, tu pourrais déjà commencer par ça, ça te fera gagner un temps fou.
Sinon pour faire ce que tu veux il y a plusieurs possibilités, tu peux passer par une commande console que tu auras créé à cet effet dans laquelle tu pourras préciser la classe à copier et copier tous les fichiers nécessaires et y modifier ce que tu souhaites à l'intérieur, en PHP.
Sinon tu peux faire ça avec un script (qui dépendra de ton environnement, par exemple, sous linux, ça sera un script bash)

Sinon pour faire plus simple, moi, à ta place, j'ajouterai un champ "type" dans mon entité ce qui me permettrait de conserver une seule entité, plus polyvalente, au lieu de multiplier des entités qui sont très proches et du coup énormément alourdir ton code.