1

我在 config.xml 中有这样的部分

<global>        
    <models>
        <sales>
            <rewrite>
                <order>Apptha_Reservation_Model_Order</order>                   
            </rewrite>
        </sales>
    </models>
</global>

此外,我已经从这里http://alanstorm.com/magento_config下载了 Alan Strom 配置查看器, 但是当我检查 myhost.com/?showConfig=true 时,我没有看到我的新重写规则。

4

1 回答 1

1

当模块配置没有被合并到 Magento 的配置 DOM 中时,有三种可能性:

  1. 正在缓存配置。通过在System > Cache Management中刷新所有来清除它
  2. 由于不正确的模块声明或不正确的路径,您的模块的config.xml没有被解析。
  3. global/disable_local_modules设置为1or true- 通常,请参阅app/etc/local.xml,但唯一确定的方法是检查完整的 DOM。

在 (2) 的情况下,只有在清除配置缓存后才能进行故障排除。然后,检查将模块的config.xml文件解析为配置 DOM 的每个条件:

  1. 正确的模块声明:名称以“.xml”结尾的文件,其中包含存在于app/etc/app/etc/modules/中的有效 XML 语法(按照惯例,它是后者)。
  2. 该模块包含如下结构(目前 SO 未正确显示这些;请参阅 gist):

    真正的本地

  3. 根据上述配置,配置文件必须位于app/code/local/Module/Path/etc/config.xml并且必须包含有效的 XML 语法才能被解析。

如果模块声明和文件路径正确,则可能的罪魁祸首是语法无效。这可以通过设置开发者模式标志并确保 PHP 显示错误来确定(参见index.php)。

于 2012-10-13T12:30:54.727 回答