Frage

Ich habe ein benutzerdefiniertes Modul mit Folgendem:

magento-project/app/code/local/Hunique/Customs/etc/config.xml

<?xml version="1.0" ?>
 <config>
<modules>
    <Hunique_Customs>
        <version>1.0.1</version>
    </Hunique_Customs>
</modules>

<global>
    <models>
        <custommodule>
            <class>Hunique_Customs_Model</class>
            <resourceModel>custommodule_resource</resourceModel>
        </custommodule>
        <custommodule_resource>
            <class>Hunique_Customs_Model_Resource</class>
            <entities>
                <custommodule>
                    <table>custommodule</table>
                </custommodule>
                <questions>
                    <table>questions</table>
                </questions>
                <answers>
                    <table>answers</table>
                </answers>
            </entities>
        </custommodule_resource>
    </models>

    <resources>
        <custommodule_setup>
            <setup>
                <module>Hunique_Customs</module>
            </setup>
            <connection>
                <use>core_setup</use>
            </connection>
        </custommodule_setup>
        <custommodule_read>
            <connection>
                <use>core_read</use>
            </connection>
        </custommodule_read>
        <custommodule_write>
            <connection>
                <use>core_write</use>
            </connection>
        </custommodule_write>
    </resources>

    <blocks>
        <custommodule>
            <class>Hunique_Customs_Block</class>
        </custommodule>
    </blocks>

    <helpers>
        <hunique_customs>
            <class>Hunique_Customs_Helper</class>
        </hunique_customs>
    </helpers>

</global>

<frontend>
    <routers>
        <custommodule>
            <use>standard</use>
            <args>
                <module>Hunique_Customs</module>
                <frontName>custommodule</frontName>
            </args>
        </custommodule>
    </routers>

    <layout>
        <updates>
            <custommodule>
                <file>custommodule.xml</file>
            </custommodule>
        </updates>
    </layout>

</frontend>    
<admin>
    <routers>
        <adminhtml>
            <use>admin</use>
            <args>
                <modules>
                    <Hunique_Customs before="Mage_Adminhtml">Hunique_Customs</Hunique_Customs>
                </modules>
            </args>
        </adminhtml>
    </routers>
</admin>

<adminhtml>
    <layout>
        <updates>
            <custommodule>
                <file>custommodule.xml</file>
            </custommodule>
        </updates>
    </layout>
</adminhtml>

Dann habe ich die /magento-project/app/code/local/Hunique/Customs/etc/adminhtml.xml im selben Ordner

<config>
<menu>
    <hunique>
        <title>Hunique</title>
        <sort_order>1</sort_order>
        <children>
            <customs_qa module="hunique_customs">
                <title>Questions And Answers</title>
                <sort_order>1</sort_order>
                <action>adminhtml/custommodule</action>
            </customs_qa>
        </children>
    </hunique>
</menu>

Dann habe ich im Design:/magento-project/app/design/adminhtml/default/default/layout/custommodule.xml

<?xml version="1.0"?>
<layout>
  <adminhtml_custommodule_index>
    <reference name="content">
        <block type="core/template" output="toHtml" name="templateBlock" template="custommodule/questions-and-answers.phtml" />
    </reference>
   </adminhtml_custommodule_index>
 </layout>

Und ich habe die Datei/Magento- Project/App/Design/adminHtml/Standard/Standard/templates/customModule/Fragen-und-Answers.phtml, aber das enthält nur ein H1-Tag mit dem Test jetzt.

Ich habe auch den Controller:/magento-project/app/code/local/Hunique/Customs/controllers/CustommoduleController.php

<?php
class Hunique_Customs_CustommoduleController extends Mage_Adminhtml_Controller_Action
{   
  public function indexAction()
  {    
    var_dump(Mage::getSingleton('core/layout')->getUpdate()->getHandles());
    $this->loadLayout();
    $this->renderLayout();
  }
}

Ich habe den Var-Dump, um zu sehen, ob ich irgendwelche Handles habe, aber das ist ein leeres Array.Meine Seite wird über das Admin-Menü geladen.enter image description hereMeine Routen und mein Admin-Menü funktionieren einwandfrei, ich bekomme mein HTML einfach nicht angezeigt ...Kann mir jemand den richtigen Weg weisen?

War es hilfreich?

Lösung

Der von Ihnen bereitgestellte Code sollte so funktionieren, wie er ist.Obwohl beide deine config.xml Und adminhtml.xml Dateien haben ihre nicht <config> Tags geschlossen, ich vermute, Sie haben gerade diesen Fehler gemacht, als Sie den Code hier eingefügt haben, denn sonst würden Sie einen Fehler anstelle einer Seite mit leerem Inhaltsbereich sehen.

Mein Rat ist, dass Sie nach Tippfehlern in Dateinamen oder falschen Verzeichnisverschachtelungen suchen sollten.Auch dein var_dump ist leer, da Sie versuchen, Layout-Handles anzuzeigen, bevor das Layout tatsächlich geladen wird.Sie müssen die ersten beiden Zeilen in Ihrer Aktion vertauschen:

public function indexAction() {  
    $this->loadLayout();
    var_dump(Mage::getSingleton('core/layout')->getUpdate()->getHandles());
    $this->renderLayout();
}

Außerdem können Sie sicherstellen, dass Ihr Admin-Panel das verwendet default/default Paket/Thema oder dass es sich in der Fallback-Kette befindet.Wenn ein anderes Paket verwendet wird (z. B. custompackage/default), wird es nicht reinschauen default/default.Wenn Sie sich nicht sicher sind, können Sie jederzeit Ihre Layout-Update-XML und Ihre Vorlage einfügen base/default stattdessen.Es existiert nicht im Admin-Panel, aber Sie können es erstellen und es wird als letztes Fallback verwendet.

Lassen Sie mich wissen, ob es hilft.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit magento.stackexchange
scroll top