Neden Magento 2 `addForeignKey` işlevi` onUpdate` içermiyor ve yabancı anahtar eklerken nasıl ekleniyor


10

Magento 2 kurulum betikleriyle başladım ve Magento'nun addForeignKeyfonksiyon parametreleriyle küçük bir değişiklik buldum . Magento 1'de işlevin argümanları şöyledir,

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

Başvurulan tablo satırının güncellenmesinde ne yapılacağını tanımlamak için bir seçenek vardır,
Magento 2'de aynı işlevin argümanları şöyledir,

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

onUpdateTartışmayı kaldırmışlar .
Herkes bunu neden yaptıkları hakkında herhangi bir fikri var mı ??
Ayrıca onUpdateyabancı anahtar için eylem eklemek istersem ne yapmam gerektiğini bana yönlendirebilir mi?

Yanıtlar:


2

Göre bu kabul Github konuyla , bu tasarım gereğidir aslında:

Merhaba, bu diğer olası veritabanı motorlarına daha iyi uyum sağlamak için kasıtlı kısıtlamadır. Ancak "ON UPDATE" gibi eylemleri uygulama düzeyinde uygulayabilirsiniz. Bu durumda kodunuz Magento SPI (olaylar, durdurucular, vb.) İle uyumlu olacaktır.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.