Warum Magento 2 `addForeignKey` Funktion nicht` onUpdate` hat und wie man es beim Hinzufügen eines Fremdschlüssels hinzufügt


10

Ich habe mit Magento 2-Setup-Skripten begonnen und eine kleine Änderung an den addForeignKeyFunktionsparametern von Magento gefunden . In Magento 1 lauten die Argumente für die Funktion wie folgt:

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

Es gibt eine Option zum Definieren, was beim Aktualisieren der referenzierten Tabellenzeile zu tun ist.
In Magento 2 lauten die Argumente für dieselbe Funktion wie folgt:

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

Sie haben onUpdateArgument entfernt.
Hat jemand eine Idee, warum sie das getan haben?
Kann mich auch jemand anleiten, was zu tun ist, wenn ich eine onUpdateAktion für einen Fremdschlüssel hinzufügen möchte ?

Antworten:


2

Nach diesem anerkannten Github-Problem ist dies tatsächlich beabsichtigt:

Hallo, dies ist eine bewusste Einschränkung, um eine bessere Übereinstimmung mit anderen möglichen Datenbank-Engines zu erreichen. Sie können jedoch Aktionen wie "ON UPDATE" auf Anwendungsebene implementieren. In diesem Fall ist Ihr Code mit Magento SPI (Ereignisse, Abfangjäger usw.) kompatibel.

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.