Проблемы с добавлением новой вкладки в представление клиента в бэкэнде magento
Я очень новичок в 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>
А вот содержимое файла what_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>
Конечно, этот блок существует и расширяет Mage_Adminhtml_Block_Template и реализует Mage_Adminhtml_Block_Widget_Tab_Interface.
Когда я перехожу к сведениям о клиенте, я получаю сообщение об ошибке: неверная конфигурация вкладок. В журнале ошибок Magento стоит:
исключение "Mage_Core_Exception" с сообщением "Неверный тип блока: Mage_Extendcustomer_Block_Adminhtml_Customer_Showidea" в /var/www/vhosts/whwhat/htdocs/app/Mage.php:594
И я думаю, что это проблема, потому что Mage_Extendcustomer не так. Это должно быть "Что угодно...", но я не знаю, почему это предшествует Магу вместо моего пространства имен "Что угодно".
Я надеюсь, что кто-то может дать мне подсказку! Благодарю.
1 ответ
Вы должны использовать 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>
Потому что это то, что вы определили в конфигурации блоков:
<blocks>
<showidea>
<class>Whatever_Extendcustomer_Block</class>
</showidea>
</blocks>