cms/block
Entitäten haben eine Verknüpfungstabelle cms_block_store
, die Datensätze, in denen ein bestimmter Block mit einem oder mehreren Speichern verknüpft ist. Vor CE 1.6 entfernt das Ressourcenmodell Mage_Cms_Model_Mysql4_Block
(Link) diese Datensätze nicht separat, bevor die Entität gelöscht wird, und verlässt sich effektiv auf die Kaskade, um sie zu entfernen. Ab 1.6.0.0 entfernt das verschobene Ressourcenmodell diese Datensätze explizit in Mage_Cms_Model_Resource_Block::_beforeDelete
(Link), bevor die Entität gelöscht wird aus cms_block
:
protected function _beforeDelete(Mage_Core_Model_Abstract $object)
{
$condition = array(
'block_id = ?' => (int) $object->getId(),
);
$this->_getWriteAdapter()->delete($this->getTable('cms/block_store'), $condition);
return parent::_beforeDelete($object);
}
Gibt es einen offensichtlichen Grund, diesen Vorgang in zwei separaten Abfragen durchzuführen, anstatt sich wie zuvor auf die Kaskade zu verlassen?