Question

Je ne peux pas obtenir le onDelete au travail dans Doctrine2 (avec YAML Mapping).

J'ai essayé cette relation dans ma classe Product:

oneToOne:
    category:
      targetEntity: Category
      onDelete: CASCADE

Mais cela ne fonctionne pas ..

EDIT:

J'ai mis la ON DELETE: CASCADE manuellement dans la base de données

importé la cartographie YAML avec doctrine:mapping:import,

vidé la base de données

mis à jour à partir du schéma avec doctrine:schema:update et a pas ON DELETE dans la clé étrangère .. donc ressemble même doctrine ne sait pas comment le faire lol ..

Était-ce utile?

La solution

OK, got it! Je devais utiliser onDelete l'intérieur joinColumn:

oneToOne:
    category:
        targetEntity: Category
        joinColumn:
            onDelete: CASCADE

Autres conseils

Ceci est la façon d'utiliser onDelete dans 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
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top