我正在尝试创建一个本地模块。关于这一点,有很多问题。我几乎所有人都跟着他们。但它永远不会奏效。
Atlast我遵循了这个:http://devdocs.magento.com/guides/m1x/magefordev/mage-for-dev-6.html
但这也不起作用。这是我的结构:
应用程序/代码/本地/ MyCompany的/你好/型号/资源/ Setup.php
<?php
class Mycompany_Hello_Model_Resource_Setup extends Mage_Core_Model_Resource_Setup {
}
在app / code / local / Mycompany / Hello / sql / mycompany_hello_setup / install-0.1.0.php
<?php
echo 'Running This test: '.get_class($this)."\n <br /> \n";
die("Exit for now");
应用程序/代码/本地/ MyCompany的/你好的/ etc / config.xml中
<?xml version="1.0"?>
<config>
<modules>
<Mycompany_Hello>
<version>0.1.0</version>
</Mycompany_Hello>
</modules>
<frontend>
<routers>
<hello>
<use>standard</use>
<args>
<module>Mycompany_Hello</module>
<frontName>hello</frontName>
</args>
</hello>
</routers>
</frontend>
<global>
<resources>
<Mycompany_Hello_setup>
<setup>
<module>Mycompany_Hello</module>
<class>Mycompany_Hello_Model_Resource_Setup</class>
</setup>
</Mycomapny_Hello_setup>
</resources>
</global>
这里我面临的唯一问题是它永远不会执行安装脚本。 我的方法到现在为止:
每次尝试将app / code / local / Mycompany / Hello / sql / mycompany_hello_setup / install-0.1.0.php重命名为以下名称 app / code / local / Mycompany / Hello / sql / hello_setup / install- 0.1.0.php 下, app / code / local / Mycompany / Hello / sql / hello_setup / mysql4-install-0.1.0.php , app / code / local / Mycompany / Hello / sql / mycompany_hello_setup / install- 0.1.0.php 下, 应用/代码/本地/ MyCompany的/你好/ SQL / Mycompany_hello_setup / mysql4安装-0.1.0.php
在每次尝试期间,我都会刷新缓存并从core_resources表中删除该条目。
我的所有文件都是777(出于调试目的,稍后我会将其更改为755)。我在调试中安装了一个调试代码。一旦执行,我将用我的实际安装程序脚本替换它。
但似乎有些东西,我错过了一些东西,因此它无法正常工作。
请帮忙。提前谢谢。
答案 0 :(得分:0)
在resources
标记中,第一级节点必须与sql /中的文件夹名称匹配,并且区分大小写。
所以看起来应该是这样的:
<resources>
<mycompany_hello_setup>
<setup>
<module>Mycompany_Hello</module>
<class>Mycompany_Hello_Model_Resource_Setup</class>
</setup>
</mycompany_hello_setup>
</resources>
安装脚本位于app / code / local / Mycompany / Hello / sql / mycompany_hello_setup / install-0.1.0.php中
如果它仍然不起作用,请检查core_resource
表中没有code
=“mycompany_hello_setup”的条目(如果有的话,将其删除),并确保已创建应用程序/ etc / modules / Mycompany_Hello.xml文件,内容为:
<?xml version="1.0"?>
<config>
<modules>
<Mycompany_Hello>
<active>true</active>
<codePool>local</codePool>
</Mycompany_Hello>
</modules>
</config>
答案 1 :(得分:0)
如果它仍然不起作用,请检查core_resource表中是否没有条目,如果有条目则将其删除:这有效。 由于该表已经有[module_name] _setup的条目,我创建了名为[Namespace_name] _ [module_name] _setup的新文件夹,而不是删除现有的文件夹,并且它有效。