6

我无法让 onDelete 在 Doctrine2 中工作(使用 YAML 映射)。

我在Product课堂上尝试了这种关系:

oneToOne:
    category:
      targetEntity: Category
      onDelete: CASCADE

但这不起作用..

编辑:

我已经ON DELETE: CASCADE在数据库中手动设置

doctrine:mapping:import使用,导入 YAML 映射

清空数据库

从模式中更新了它,doctrine:schema:update并且在外键中没有ON DELETE。所以看起来即使是 Doctrine 也不知道该怎么做,哈哈。

4

2 回答 2

22

好的,我知道了!我不得不在onDelete里面使用joinColumn

oneToOne:
    category:
        targetEntity: Category
        joinColumn:
            onDelete: CASCADE
于 2011-11-30T17:47:41.867 回答
7

这是使用的onDelete方式joinTable

manyToMany:
    parameters:
        targetEntity: Fox\LandingBundle\Entity\Parameter
        cascade: ["persist","remove"]
        joinTable:
            name: subscriberBox_parameter
            joinColumns:
                subscriberBox_id:
                    referencedColumnName: id
            inverseJoinColumns:
                parameter_id:
                    referencedColumnName: id
                    onDelete: CASCADE
于 2013-10-19T19:10:55.610 回答