6

カスタム管理モジュールを作成しましたが、コンテンツを入れることができません。常に空白です。テスト用の簡単なコードを試していますが、何も機能していないようです。

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

    $this->_addContent($this->getLayout()->createBlock('adminhtml/template')->setTemplate('uhmaadmin/contactos.list.phtml')->toHtml());
    $this->renderLayout();
}

.phtml の

echo 'hello world';

phtmlでエラーが発生した場合、システムがクラッシュします。これは、ファイルを取得していることを意味しますが、不足しているものを教えてください

4

1 に答える 1

10

管理コントローラの$this->_addContentメソッドは、ブロック オブジェクトが渡されることを想定しています。

protected function _addContent(Mage_Core_Block_Abstract $block)
{
    $this->getLayout()->getBlock('content')->append($block);
    return $this;
}

あなたは通りかかっています

$this->getLayout()->createBlock('adminhtml/template')->setTemplate('uhmaadmin/contactos.list.phtml')->toHtml()

これは文字列です。レンダリングが早すぎます。ログを確認すると、引数_addContentが予期しないタイプであることを示す警告/エラー/何かが表示されるはずです。

toHtml メソッドを呼び出さずに試す

$this->_addContent($this->getLayout()->createBlock('adminhtml/template')->setTemplate('uhmaadmin/contactos.list.phtml'));
于 2010-08-18T16:27:32.553 に答える