我对Magento很新,我正在尝试为Magento后端的客户视图添加一个新选项卡.
我为它制作了一个新的扩展/模块.以下是我的etc/config.xml的一些摘录:
<global>
<blocks>
<showidea>
<class>Whatever_Extendcustomer_Block</class>
</showidea>
</blocks>
<!-- ... -->
</global>
<adminhtml>
<layout>
<updates>
<showidea>
<file>whatever_extendcustomer.xml</file>
</showidea>
</updates>
</layout>
</adminhtml>
Run Code Online (Sandbox Code Playgroud)
这里是whatever_extendcustomer.xml文件的内容:
<adminhtml_customer_edit>
<reference name="customer_edit_tabs">
<action method="addTab">
<name>extendcustomer_showidea</name>
<block>extendcustomer/adminhtml_customer_showidea</block>
</action>
</reference>
</adminhtml_customer_edit>
Run Code Online (Sandbox Code Playgroud)
当然这个块是存在的,它扩展了Mage_Adminhtml_Block_Template并实现了Mage_Adminhtml_Block_Widget_Tab_Interface.
当我转到客户的详细信息时,我现在得到错误:错误的选项卡配置.在Magento的错误日志中:
异常'Mage_Core_Exception',消息'无效的Blocktype:Mage_Extendcustomer_Block_Adminhtml_Customer_Showidea'在/var/www/vhosts/whatever/htdocs/app/Mage.php:594
我认为这是问题,因为Mage_Extendcustomer是错的.它应该是Whatever _ ...但我不知道为什么它在Mage_而不是我的Whatever_命名空间之前.
我希望有人能给我一些线索!谢谢.
您应该使用showidea而不是extendcustomer在布局文件中:
<adminhtml_customer_edit>
<reference name="customer_edit_tabs">
<action method="addTab">
<name>extendcustomer_showidea</name>
<block>showidea/adminhtml_customer_showidea</block>
</action>
</reference>
</adminhtml_customer_edit>
Run Code Online (Sandbox Code Playgroud)
因为它是你在块配置中定义的:
<blocks>
<showidea>
<class>Whatever_Extendcustomer_Block</class>
</showidea>
</blocks>
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1810 次 |
| 最近记录: |