cms/block
các thực thể có một bảng tham gia cms_block_store
, các bản ghi trong đó liên kết một khối nhất định với một hoặc nhiều cửa hàng. Trước CE 1.6, mô hình tài nguyên Mage_Cms_Model_Mysql4_Block
(liên kết) không loại bỏ riêng các bản ghi này trước khi thực thể bị xóa, dựa vào tầng một cách hiệu quả để loại bỏ chúng. Kể từ 1.6.0.0, mô hình tài nguyên được di dời sẽ loại bỏ rõ ràng các bản ghi này trong Mage_Cms_Model_Resource_Block::_beforeDelete
(liên kết) trước khi thực thể bị xóa khỏi 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);
}
Có một lý do rõ ràng để thực hiện thao tác này trong hai truy vấn riêng biệt thay vì dựa vào tầng như trước đây?