1

この記事に基づいて、単純な Magento モジュールを作成しています。
管理者の新しいアイテムアクションに問題があります。

<?php

class Namespace_Gallery_Adminhtml_GalleryController extends Mage_Adminhtml_Controller_Action
{
protected function _initAction()
{
    $this->loadLayout()
        ->_setActiveMenu('namespace/gallery');

    return $this;
}

public function indexAction()
{
    $this->_initAction();
    $this->_addContent($this->getLayout()->createBlock('gallery/adminhtml_gallery'));
    $this->renderLayout();
}

public function editAction()
{
    echo 'edit';
}

public function newAction()
{
    $this->_forward('edit');
}

アイテム indexAction が機能し、アイテムが表示されます。アイテムをクリックすると、意図したとおりに「編集」が返されます。残念ながら、[新しいアイテムを追加] をクリックすると 404 が返されます (URL は問題ありません)。

何か案は?

4

2 に答える 2

0

adminhtml レイアウト更新 xml を追加する必要があります。

<?xml version="1.0"?>
<layout>
    <[module]_adminhtml_[controller]_index>
        <reference name="content">
                <block type="[module]/adminhtml_[frontname]" name="[module]_grid"/>
        </reference>
    </[module]_adminhtml_[controller]_index>
</layout>

もちろん、config.xmlで設定する必要があります

<adminhtml>
    <layout>
        <updates>
            <[module]>
                <file>[module].xml</file>
            </[module]>
        </updates>
    </layout>
</adminhtml>

また、 editAction() でレイアウトをロード/レンダリングする必要がある場合があります

于 2012-09-17T15:28:33.080 に答える