【发布时间】:2010-01-28 14:13:23
【问题描述】:
我在自定义命名空间的本地代码文件夹中创建了一个模块。 该块没有显示在前端,并且在检查异常日志时,事实证明 Magento 正在寻找错误的位置。
exception ‘Mage_Core_Exception’ with message ‘Invalid block type: Mage_MyCompany_ForthcomingProducts_Block_List’ in /var/www/html/app/Mage.php:407
如果我在调用块时排除 MyCompany_ 前缀,也是如此;它仍然在 Mage 命名空间中查找。 我在 modules 文件夹中的一个名为 MyCompany_All.xml 的文件中有这个,我添加的 CMS 布局工作正常,所以 Magento 肯定会加载它:
<?xml version="1.0"?>
<config>
<modules>
<MyCompany_CmsLayouts>
<codePool>local</codePool>
<active>true</active>
</MyCompany_CmsLayouts>
<MyCompany_ForthcomingProducts>
<codePool>local</codePool>
<active>true</active>
</MyCompany_ForthcomingProducts>
</modules>
</config>
有人对造成这种情况的原因有任何想法吗?
补充:这个块被一个带有这个模板代码的静态块调用:
{{block type="MyCompany_ForthcomingProducts/List" template="forthcomingproducts/list.phtml"}}
该块的 config.xml 是:
<?xml version="1.0" encoding="utf-8"?>
<config>
<modules>
<MyCompany_ForthcomingProducts>
<version>0.9</version>
</MyCompany_ForthcomingProducts>
</modules>
<global>
<blocks>
<forthcomingproducts>
<class>MyCompany_ForthcomingProducts_Block</class>
</forthcomingproducts>
</blocks>
</global>
</config>
【问题讨论】:
-
我认为调用这个块的 layout.xml 或代码是相关的地方。为了诊断,我想看看那个,也许还有相关块的 config.xml。
-
非常感谢您的回复,我已将信息添加到问题中。