-1

管理者側でカテゴリページのような縦横の複数のタブを作成し、DBにデータを保存する方法は?

4

1 に答える 1

0

フォームに垂直タブを追加することを考えています。_beforeToHtml() 関数のモジュールの tabs.php ファイルに以下のコードを追加するだけです。

 $this->addTab('tabid', array(
            'label'     => Mage::helper('modulename')->__('Name of tab'),
            'class'     => 'ajax',
            'url'       => $this->getUrl('*/*/action controller name', array('_current' => true)),
        ));

tabid に必要なものを指定し、url にアクション名を指定して、この関数を tab.php ファイルにも追加して、タブの更新を処理し、$this->_updateActiveTab(); を呼び出します。_beforeToHtml() 関数内

protected function _updateActiveTab()
{
    $tabId = $this->getRequest()->getParam('tab');
    if ($tabId) {
        $tabId = preg_replace("#{$this->getId()}_#", '', $tabId);
        if ($tabId) {
            $this->setActiveTab($tabId);
        }
    }
    else {
       $this->setActiveTab('form_section'); 
    }
}

このようなコントローラーにアクションを追加します

public function yourAction() 
{
    $id = (int) $this->getRequest()->getParam('id');
    $model = Mage::getModel('modulename/modulename');

    if ($id) {
        $model->load($id);
    }

    Mage::register('modulename_data', $model);

    $this->getResponse()->setBody($this->getLayout()
      ->createBlock('modulename/adminhtml_modulename_edit_tab_tabid')->toHtml());
}  
于 2012-10-18T10:47:13.803 に答える