en utilisant onDelete avec Doctrine2
-
25-10-2019 - |
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 ..
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