2017-08-16 5 views
0

J'étudie Symfony 3 en conjonction avec sonata-admin-bundle, a atteint le point où j'ai besoin de télécharger des fichiers (images), installé sonata MediaBundle, MAIS! Atteint le point où vous avez besoin de mettre à jour la base de données par la doctrine: schéma: mise à jour, puis coincé ... lorsque je tente de mettre à jour les tableaux que je reçois une erreurComment mettre à jour des tables dans la base de données doctrine symfony 3

Le tableau avec le nom « symfony.articles » existe déjà.

googlé tout ce qui pourrait être, partout, tout repose sur la dépendance des OneToMany, etc. En général qui ne n'a pas fait - même supprimé dans toutes les essences de dépendance - tout de même que je reçois la même erreur. Je comprends que quelque part il y a un fichier avec des liens construits, mais comment surmonter tout cela? Bien sûr, je peux tout tuer et tout créer d'abord et ensuite commencer à mettre à jour la base de données, mais ce n'est pas une option! Après tout, je vais continuer à connecter les bandes et encore une fois la même erreur sortira. Invite, s'il vous plaît la décision.

Répondre

0

Vous avez un mappage en double (annotation/xml/yaml) quelque part dans vos modèles. Je ne me souviens pas de la syntaxe exacte qui cause cela, mais c'est certainement un point de départ. Utilisez le php bin/console doctrine:schema:validate pour vous aider à trouver des problèmes. Je pouvais simplement reproduire ceci en ayant une définition de nom en double dans mes entités de doctrine.

table name already exists error

+0

Je courais le 'bin $ php/doctrine de la console: schéma: commande validate' et a obtenu la même erreur. Oui, j'ai déjà une telle table, mais j'ai besoin d'ajouter de nouvelles tables qui doivent être formées à partir de nouvelles entités. – dmitry76

+0

Regardez vos entités Doctrine en haut où vous avez les annotations (je suppose que vous utilisez des annotations) définissant vos classes. Je parie que vous en avez deux nommés pareil. '* @ORM \ Table (name =" articles ", indexes = {...' – tlorens

+1

je vous trouve une erreur! Dans une autre Entité trouver des annotations avec le nom de cette table! – dmitry76