Pourquoi la fonction `addForeignKey` de Magento 2 n'a pas` onUpdate` et comment l'ajouter lors de l'ajout d'une clé étrangère

10

J'ai commencé avec les scripts de configuration de Magento 2 et j'ai trouvé un petit changement avec les addForeignKeyparamètres de fonction de Magento . Dans Magento 1, les arguments de la fonction sont comme,

public function addForeignKey($fkName, $column, $refTable, $refColumn, $onDelete = null, $onUpdate = null)

Il y a une option pour définir ce qu'il faut faire lors de la mise à jour de la ligne de table référencée,
tandis que dans Magento 2, les arguments pour la même fonction sont comme,

public function addForeignKey($fkName, $column, $refTable, $refColumn, $onDelete = null)

Ils ont supprimer l' onUpdateargument.
Quelqu'un at-il une idée de pourquoi ils ont fait ça ??
Quelqu'un peut-il également me guider quoi faire si je veux ajouter une onUpdateaction pour la clé étrangère?

Jaimin Sutariya
la source

Réponses:

2

Selon ce problème Github reconnu , c'est en fait par conception:

Salut, c'est une restriction délibérée, pour atteindre une meilleure conformité avec d'autres moteurs de base de données possibles. Mais vous pouvez implémenter des actions comme "ON UPDATE" au niveau de l'application. Dans ce cas, votre code sera compatible avec Magento SPI (événements, intercepteurs, etc.).

Danny Nimmo
la source