2010-12-13 45 views
0

我想上具有多对多的关系表中创建灯具,但我得到这个错误:Symfony的夹具和多对多的关系(教义)

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)

在我的灯具:

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

在我的架构:

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

回答

1

您需要按照这样的顺序加载灯具,该灯具不会在数据库中存在“父”记录之前创建“子”记录。当你一次加载所有的灯具时,它会创建非法的外键引用字段,因此会引发该错误。

也许有一些聪明的方法,但我个人只是从父母开始,通过从夹具文件夹中取出夹具文件,运行标准加载数据命令,将其他夹具文件粘贴回来单独加载夹具并重复该命令。

+0

谢谢!今晚会尝试 – 2010-12-13 19:13:19

2

您必须创建一个固定首先BambinbazarCategory对象(whatevercat d OES没有引用任何东西,是吗?)