我正在写一个Magento扩展,我就是不能让它出现在核心资源表中。我相信我在配置中声明的资源部分是正确的。有没有人能帮我理清头绪?提前感谢!
<?xml version="1.0"?>
<config>
<modules>
<CTRL_Analytics>
<version>0.2.0</version>
</CTRL_Analytics>
</modules>
<global>
<blocks>
<analytics>
<class>CTRL_Analytics_Block</class>
</analytics>
</blocks>
<helpers>
<analytics>
<class>CTRL_Analytics_Helper</class>
</analytics>
</helpers>
<resources>
<analytics_setup>
<setup>
<module>CTRL_Analytics</module>
</setup>
<connection>
<use>core_setup</use>
</connection>
</analytics_setup>
<analytics_write>
<connection>
<use>core_write</use>
</connection>
</analytics_write>
<analytics_read>
<connection>
<use>core_read</use>
</connection>
</analytics_read>
</resources>
</global>
<adminhtml>
<menu>
<analytics translate="title" module="analytics">
<title>Marketing and Analytics</title>
<sort_order>100</sort_order>
<action>analytics/admin</action>
</analytics>
</menu>
</adminhtml>
<frontend>
<routers>
<CTRL_Analytics>
<use>standard</use>
<args>
<module>CTRL_Analytics</module>
<frontName>analytics</frontName>
</args>
</CTRL_Analytics>
</routers>
</frontend>
</config>发布于 2010-10-15 07:46:51
查看您的XML,您正在命名安装程序文件
"mysql4-install-0.1.0.php", 但是你的起始模块版本是
"<version>0.2.0</version>" 尝试将您的起始版本更改为
"<version>0.1.0</version>"或将安装程序文件更改为
"mysql4-install-0.2.0.php". 这些文件版本号来自您的模块版本号。
我总是将一个退出或异常放入任何新的安装程序文件中,以确保PHP正在尝试加载该文件。只有在成功执行此文件后,才会将信息写出到core_resource表,退出或异常将阻止该写入。这允许您重新加载页面,并让安装程序一次又一次地运行,直到正确为止。
发布于 2013-05-05 07:31:02
我也有同样的问题,花了我一周的时间(或者说让我损失了一周!)找出原因,这非常简单。
检查文件和文件夹权限。它们可能是有限的,更改为读写您的新扩展的文件和目录,它将立即生效。毕竟与缓存没有任何关系!
发布于 2010-10-15 05:29:15
首先(我确信你已经这样做了),清除并禁用所有缓存。
其次,检查您是否能够访问Blocks和Helper。如果不是,可能是您的app\etc\modules\CTRL_Analytics.xml有问题。该模块是否显示在System>Config>Advanced下的管理中?
第三,您的sql\analytics_setup\mysql4-install-0.1.0.php和sql\analytics_setup\mysql4-upgrade-0.1.0-0.2.0.php的名称和编码是否正确。我发现mysql升级的命名约定在过去有很多人犯了错。
最后,尝试将您的服务器置于调试状态,并在mysql4-install-0.1.0.php中设置断点,以检查文件是否正在实际执行。它可能正在尝试运行,但由于SQL错误而静默失败(讨厌它!)。
希望其中的一个能有所帮助!JD
https://stackoverflow.com/questions/3937396
复制相似问题