为什么Magento 2`addForeignKey`函数没有`onUpdate`以及如何在添加外键时添加它


10

我已经开始使用Magento 2设置脚本,并且发现Magento的addForeignKey功能参数有一个小的变化。在Magento 1中,该函数的参数类似于

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

有一个选项可以定义在更新引用表行时要执行的操作,
而在Magento 2中,同一个函数的参数就像,

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

他们有删除onUpdate参数。
有谁知道为什么要这么做吗?
如果我要onUpdate为外键添加操作,谁能指导我该怎么办?

Answers:


2

根据这个公认的Github问题,这实际上是设计使然

嗨,这是有意的限制,目的是更好地与其他可能的数据库引擎兼容。但是您可以在应用程序级别上执行“ ON UPDATE”之类的操作。在这种情况下,您的代码将与Magento SPI(事件,拦截器等)兼容。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.