自定义模板未加载

时间:2019-11-12 11:18:30

标签: magento magento2

我在管理主“产品”菜单中有子菜单“删除产品2”。当我单击它时-它会加载没有模板的空白页。

这是menu.xml文件:

<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="../../../Backend/etc/menu.xsd">
    <menu>
        <add id="Sky_LBT::delete_product2"
             title="Delete Product 2"
             translate="title"
             module="Sky_LBT"
             sortOrder="50"
             parent="Magento_Catalog::catalog"
             resource="Skillaerea_Catalog::motormarket"
             action="lbta/lbta/index"
        />
    </menu>
</config>

这是routes.xml文件

<?xml version="1.0" encoding="UTF-8"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:App/etc/routes.xsd">
    <router id="admin">
        <route id="lbta" frontName="lbta">
            <module name="Sky_LBT"/>
        </route>
    </router>
</config>

这是布局lbta_lbta_index.xml文件:

<?xml version="1.0"?>
<page xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" layout="1column" xsi:noNamespaceSchemaLocation="urn:magento:framework:View/Layout/etc/page_configuration.xsd">
    <referenceContainer name="content">
        <block class="Sky\LBT\Block\Adminhtml\LBTA"
               name="lbta"
               template="Sky_LBT::lbta.phtml"
        />
    </referenceContainer>
</page>

这是控制器\ Controller \ Adminhtml \ LBTA \ Index.php:

class Index extends \Magento\Backend\App\Action
{
    protected $_resultPageFactory;   

    public function __construct(
        \Magento\Backend\App\Action\Context $context,
        \Magento\Framework\View\Result\PageFactory $resultPageFactory       
    )
    {
        $this->_resultPageFactory = $resultPageFactory;      
        return parent::__construct($context);
    }

    public function execute()
    {
        return $this->_resultPageFactory->create();
    }
}

这是块Block \ Adminhtml \ LBTA.php:

class LBTA extends \Magento\Backend\Block\Template
{
     public function __construct(
         \Magento\Backend\Block\Template\Context $context
     )
     {
         parent::__construct($context);
     }

    public function sayHello()
    {
        return __('Hello World');
    }
}

这是模板lbta.phtml文件:

<h2>Welcome to admin</h2>
<?php
echo $block->sayHello();

请帮助。

1 个答案:

答案 0 :(得分:0)

我找到了解决方案。需要在lbta_lbta_index.xml文件中将layout =“ 1column”更改为layout =“ admin-1column”。