【发布时间】:2013-03-04 18:02:19
【问题描述】:
我已经创建了 Magento 扩展。我已经安装并卸载了它。在卸载过程中,我发现关联的数据库表没有被删除,并且core_config_data和core_resource中的设置。有人可以帮助我吗?
【问题讨论】:
标签: magento
我已经创建了 Magento 扩展。我已经安装并卸载了它。在卸载过程中,我发现关联的数据库表没有被删除,并且core_config_data和core_resource中的设置。有人可以帮助我吗?
【问题讨论】:
标签: magento
删除扩展的文件时,存储在数据库中的数据(core_config_data 中的专用表和配置)不会被删除。
为此,您有两个选择,创建一个 sql 升级设置以删除这些条目,然后升级您的扩展,或者在 phpmyadmin 中手动执行。
即使不推荐,我总是使用第二个,我只是运行类似的查询
DROP TABLE 'mytable';
DELETE FROM 'core_config_data' WHERE path LIKE '%mymodule%';
当然,最干净的方法是另一种方法,在 sql 文件中创建这些请求,从您的版本升级到下一个版本,然后通过在扩展程序上升级 etc/config.xml 中的版本来运行它。
如果扩展名不是您的,我建议查看模块的etc/ 文件夹中的system.xml 和/或其他xml 文件,以查找存储在core_config_data 中的信息,然后在sql/ 文件夹中的所有文件中查找查找其他信息(表、列、添加的行)。
【讨论】:
对于某些扩展,添加了一个与属性相关的附加条目。 因此,除了从 core_config_data 中删除条目之外,还需要将其删除。
$eav->addAttribute('customer', 'some_property', array(
'label' => 'some label',
'type' => 'varchar',
'input' => 'text',
'visible' => true,
'required' => true,
'position' => 1,
));
【讨论】: