Pregunta

Estoy desarrollando una extensión Magento con acceso a la mesa personalizado utilizando V 1.7.0.2. Paquete creado e instalado en otra instancia de Magento con 1.5.0.

También puedo instalar mi extensión en 1.5.0. Cuando accedo a la lista de mi tabla desde el menú de administración, recibo error "Fatal error: Class 'Mage_Core_Model_Resource_Db_Abstract' not found.

Mage\Core\Model\Resource\Db\Abstract.php Falta en Magento1.5.1.0. ¿Puede alguien ayudarme cómo puedo crear un módulo compatible con ambas versión?

¿Fue útil?

Solución

En 1.5 la clase que se comporta como Mage_Core_Model_Resource_Db_Abstract se comporta en 1.7 es Mage_Core_Model_Mysql4_Abstract.

Tu modelo debe extenderse Mage_Core_Model_Mysql4_Abstract en 1.5

EDITAR
Puede hacer que el modelo extienda Mage_Core_Model_Mysql4_Abstract para todas las versiones porque esta clase existe en 1.7 también para la compatibilidad hacia atrás y se ve así.

abstract class Mage_Core_Model_Mysql4_Abstract extends Mage_Core_Model_Resource_Db_Abstract
{
}

Otros consejos

Antes de que Magento 1.6.0.0 solo admitiera MySQL como backend, por lo que Mage_Core_Model_Resource_DB_Abstract simplemente no existe. Puede verificar esto navegando en root_magento_dir/app/core/mage/model/recursos.

http://www.magentocommerce.com/knowledge-base/entry/magento-for-dev-part-6-magento-setup-resources (Verifique los scripts agnósticos RDBMS)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a magento.stackexchange
scroll top