Por que a função `addForeignKey` do Magento 2 não possui` onUpdate` e como adicioná-la ao adicionar chave estrangeira

10

Comecei com os scripts de instalação do Magento 2 e encontrei uma pequena alteração nos addForeignKeyparâmetros de função do Magento . No Magento 1, os argumentos para a função são como,

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

Existe uma opção para definir o que fazer na atualização da linha da tabela referenciada.
Enquanto no Magento 2, os argumentos para a mesma função são:

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

Eles removeram o onUpdateargumento.
Alguém tem alguma idéia sobre por que eles fizeram isso?
Também alguém pode me orientar o que fazer se eu quiser adicionar onUpdateação para chave estrangeira?

Jaimin Sutariya
fonte

Respostas:

2

De acordo com este problema reconhecido no Github , isso é realmente por design:

Olá, esta é uma restrição deliberada, para obter uma melhor conformidade com outros mecanismos de banco de dados possíveis. Mas você pode implementar ações como "ON UPDATE" no nível do aplicativo. Nesse caso, seu código será compatível com o Magento SPI (eventos, interceptores, etc.).

Danny Nimmo
fonte