解决: 愚蠢的我,我已启用编译...关闭它,事情按预期工作。无论如何,谢谢你的时间:)
我生气了。我一直在尝试一切(除了正确的)以使其工作但除了标准菜单之外没有内容呈现。 我正在尝试创建一个简单的块,在后端呈现“hello”,如果我例如复制 如果我从catalog.xml复制Mage的块,它可以正常工作<block type="adminhtml/catalog_product" name="products_list">
请建议。
config.xml中
<?xml version="1.0"?>
<config>
<modules>
<Wish_Scheduleproduct>
<version>0.0.1</version>
</Wish_Scheduleproduct>
</modules>
<global>
<models>
<scheduleproduct>
<class>Wish_Scheduleproduct_Model</class>
</scheduleproduct>
</models>
<helpers>
<scheduleproduct>
<class>Wish_Scheduleproduct_Helper</class>
</scheduleproduct>
</helpers>
<blocks>
<scheduleproduct>
<class>Wish_Scheduleproduct_Block</class>
</scheduleproduct>
</blocks>
</global>
<frontend>
<routers>
<scheduleproduct>
<use>standard</use>
<args>
<module>Wish_Scheduleproduct</module>
<frontName>scheduleproduct</frontName>
</args>
</scheduleproduct>
</routers>
<layout>
<updates>
<wish_scheduleproduct>
<file>scheduleproduct.xml</file>
</wish_scheduleproduct>
</updates>
</layout>
</frontend>
<admin>
<routers>
<scheduleproduct>
<use>admin</use>
<args>
<module>Wish_Scheduleproduct</module>
<frontName>scheduleproduct</frontName>
</args>
</scheduleproduct>
</routers>
</admin>
<adminhtml>
<layout>
<updates>
<scheduleproduct>
<file>scheduleproduct.xml</file>
</scheduleproduct>
</updates>
</layout>
<menu>
<scheduleproduct translate="title">
<title>Schedule product</title>
<sort_order>40</sort_order>
<depends>
<module>Wish_Scheduleproduct</module>
</depends>
<children>
<openings translate="title">
<title>Handle open hours</title>
<action>scheduleproduct/admin_schedule</action>
<sort_order>1</sort_order>
</openings>
</children>
</scheduleproduct>
</menu>
</adminhtml>
</config>
scheduleproduct.xml(布局更新)
<?xml version="1.0"?>
<layout version="0.1.0">
<scheduleproduct_admin_schedule_index>
<reference name="menu">
<action method="setActive"><menupath>scheduleproduct/openings</menupath></action>
</reference>
<reference name="content">
<block type="scheduleproduct/admin_test" name="myTester" />
</reference>
</scheduleproduct_admin_schedule_index>
</layout>
ScheduleController.php
class Wish_Scheduleproduct_Admin_ScheduleController extends Mage_Adminhtml_Controller_Action
{
public function indexAction()
{
$this->loadLayout();
$this->renderLayout();
}
}
The Block
<?php
class Wish_Scheduleproduct_Block_Admin_Test extends Mage_Adminhtml_Block_Template
{
protected function _construct()
{
echo "Hello";;
}
}
Filetree:http://i.stack.imgur.com/N0QLG.png
感谢您的帮助!
我已经检查了mageFindClassFile方法生成的包含路径,但似乎没有包含Block路径。
答案 0 :(得分:1)
我重新创建了您的模块结构,并且已成功将块添加到页面中。下载档案here并根据您自己的版本进行差异化。我看到的三个可能的罪魁祸首是
如果您有另一个模块添加名为myTester
的块,可能会发生奇怪的事情
您没有提到scheduleproduct.xml
的位置。确保它在正确的位置并由Magento
您的块文件在构造函数中有echo "hello"
。这将有效,但它将在页面顶部打印出“hello”一词。它不会向内容区域添加内容。如果您希望将内容添加到内容区域,请让_toHtml
返回一个字符串。 (有关此示例,请参阅链接模块)