0

我为我的扩展创建了一个 SQL 安装脚本,它运行得很好。我正在开发关闭缓存的扩展。当我打开缓存时,安装脚本没有运行,我不知道为什么。

我尝试通过管理面板清除所有 Magento 缓存,刷新缓存存储,手动删除 magento/var/cache 文件夹的内容,清除 APC 缓存,从命令行清除 redis 后端并重新启动 PHP过程,但没有任何效果。我设法让安装脚本运行的唯一方法是关闭缓存。

有谁知道为什么会发生这种情况?我正在使用 Magento v1.4.0.0 RC1。

4

2 回答 2

0

安装脚本应该只运行一次,并且只有当您通过更新模块 config.xml 的版本来告诉 Magento 这样做时。此配置被缓存,因此清除所有缓存并重新加载页面......它应该运行安装脚本。

您始终可以通过重置数据库中模块的版本(在 magento 数据库的 core_resource 表中)来重置 Magento 用于运行安装脚本的方式。

于 2013-03-14T16:52:44.907 回答
0

更新脚本由 Mage_Core_Model_App::_initModules() 方法运行,但仅在缓存为空或禁用时运行。

因此,请确保在 index.php 中的 Mage::run() 调用之前不要以任何方式访问模块配置。

于 2013-08-27T13:57:00.327 回答