2010-12-13 5 views
0

Je suis en train de créer des montages sur une table qui a une relation plusieurs à plusieurs, mais je reçois cette erreur:montage Symfony et plusieurs à plusieurs (Doctrine)

SQLSTATE[23000]: Integrity constraint violation: 1452 Cannot add or update a child row: a foreign key constraint fails (bambinbazar . bambinbazar_category_articles , CONSTRAINT babi FOREIGN KEY (articles_id) REFERENCES bambinbazar_articles (id) ON DELETE CASCADE)

Dans mon appareil:

BambinbazarArticles: 
article_vetement: 
    title:   bla bla 
    BambinbazarCategory: [whateverCat] 

Dans mon schéma:

relations: 
    BambinbazarCategory: 
    class:BambinbazarCategory 
    refClass: BambinbazarCategoryArticles 
    local: category_id 
    foreign: articles_id 
    foreignAlias: BambinbazarArticles 

Répondre

1

Vous devez charger les appareils dans un ordre qui n'essaie pas de créer un enregistrement "enfant" avant qu'un enregistrement "parent" existe dans la base de données. Lorsque vous chargez tous les appareils en même temps, il crée des champs référencés par une clé étrangère illégale, ce qui provoque une erreur. Peut-être y a-t-il un astucieux moyen de contourner le problème, mais je charge les appareils séparément, en commençant par le parent, en retirant les fichiers du projecteur du dossier fixtures, en exécutant la commande load-data standard, en collant l'autre fichier dans, et répéter la commande.

+0

Merci! vais l'essayer ce soir –

2

Vous devez créer un objet BambinbazarCategory avec un dispositif premier (whatevercat d oes ne fait référence à rien, n'est-ce pas?)

Questions connexes