直到现在,我一直在构建一个模块并进行大量更改而没有任何问题。我从扩展程序的system.xml文件中删除了一个配置变量,但该字段仍在配置中。我已禁用所有缓存,刷新所有缓存(通过magento admin和手动删除目录中的所有内容),但它仍然不会消失。作为测试,我使用相同的节点名称将其添加回system.xml文件,但更改标签并获取更改。我也可以通过将<show_in_...>
设置为0来隐藏它。但是,在它消失后,我将它从system.xml文件中删除,然后它再次显示在管理员中。我不得不想象这是一个缓存问题,但我无法弄清楚要冲洗什么以使其消失。有什么想法吗?
答案 0 :(得分:6)
要检查两件事。保存配置值时,magento(当前)会将其保留到core_config_data
表。即使您从system.xml
配置中删除了配置字段。该路径/值对仍将存储在此数据库中。做一个
SELECT * FROM core_config_data WHERE path = '/foo/baz/bar'
查看那里是否还有值。如果是,拨打Mage::getStoreConfig
仍然会返回一个值,无论system.xml
其次,Magento允许您在 config.xml
中为每个配置路径存储默认值。
<default>
<foo>
<baz>
<bar>1</bar>
</baz>
</foo>
</default>
与您的配置路径匹配的嵌套树路径的节点。如果此节点存在,那么将为Mage::getStoreConfig
的请求返回此值。
答案 1 :(得分:1)
system.xml值存储在数据库core_config_data
中:你有没有删除它?