Magento:IndexController没有加载phtml文件

时间:2015-06-19 10:48:22

标签: php xml magento

正如标题中所提到的,我无法让我的IndexController将view.phtml加载到其索引(或任何其他)操作中。希望有人可以帮助告诉我我做错了什么/失踪。这是我得到的:

应用程序的/ etc /模块/的 Namespace_MyModule.xml

<?xml version="1.0"?>

<config>
    <modules>
        <Namespace_MyModule>
            <active>true</active>
            <codePool>local</codePool>
        </Namespace_MyModule>
    </modules>
</config>

应用程序/代码/本地/命名空间/ MyModule的在/ etc /的 config.xml中

<?xml version="1.0" encoding="UTF-8"?>

<config>
    <modules>
        <Namespace_MyModule>
            <version>0.3</version>
        </Namespace_MyModule>
    </modules>


    <frontend>

        <layout>
            <updates>
                <namespace_mymodule>
                    <file>mymodule.xml</file>
                </namespace_mymodule>
            </updates>
        </layout>

        <routers>
             <namespace_mymodule>
                <use>standard</use>
                  <args>
                     <module>Namespace_MyModule</module>
                     <frontName>something</frontName>
                  </args>
             </namespace_mymodule>
        </routers>

    </frontend>

</config>

应用程序/设计/前端/默认/命名空间/布局/的 mymodule.xml

<?xml version="1.0" encoding="UTF-8"?>

<layout version="0.1.0">

    <something_index_index>
        <reference name="content">
            <block type="core/template" name="namespace_mymodule_view" template="mymodule/view.phtml" />
        </reference>
    </something_index_index>

</layout>

应用程序/代码/本地/命名空间/ MyModule的/控制器/的 IndexController.php

<?php

class Namespace_MyModule_IndexController extends Mage_Core_Controller_Front_Action {

    public function indexAction() {
        $this->loadLayout();
        $this->renderLayout();
    }
}

应用程序/设计/前端/默认/命名空间/模板/ MyModule的/的 view.phtml

<h1><?php echo "What ever"; ?></h1>

2 个答案:

答案 0 :(得分:1)

你在布局文件中犯了一个错误。您已指定类似

的句柄
frontname_controller_action

所以试试这段代码

<layout version="0.1.0">

    <something_index_index>
        <reference name="content">
            <block type="core/template" name="namespace_mymodule_view" template="mymodule/view.phtml" />
        </reference>
    </something_index_index>

</layout>

答案 1 :(得分:0)

好的,我现在修好了。 有些人可能会因此而讨厌我,但问题是我的模板没有加载。我不得不更改Magento管理区域中的设置。

General-&gt; Design-&gt; Themes-&gt; Templates-&gt;“Your Template”(在我的案例名称空间中) 一般 - &gt;设计 - &gt;主题 - &gt;布局 - &gt;“您的模板”(在我的案例名称空间中)

或只是将其添加到

General-&gt; Design-&gt; Themes-&gt; Default-&gt;“Your Template”(在我的案例名称空间中)

由于Magento有一个后备系统,所以它的工作方式相同。

现在我想知道如何添加自定义phtml文件,而无需将它们放在您当前使用的模板文件夹中,但那是另一个话题。

感谢 Meenakshi Sundaram R 寻求帮助 感谢所有花时间阅读所有这些内容的人。