cms/block
Las entidades tienen una tabla de unión cms_block_store
, los registros en los que se vincula un bloque determinado a una o más tiendas. Antes de CE 1.6, el modelo de recursos Mage_Cms_Model_Mysql4_Block
(enlace) no elimina por separado estos registros antes de que se elimine la entidad, confiando efectivamente en la cascada para eliminarlos. A partir de 1.6.0.0, el modelo de recurso reubicado elimina explícitamente estos registros en Mage_Cms_Model_Resource_Block::_beforeDelete
(enlace) antes de que la entidad se elimine de 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);
}
¿Existe una razón aparente para realizar esta operación en dos consultas separadas en lugar de confiar en la cascada como lo hizo antes?