2

使用するために 2 つの異なるモデルを呼び出すビューが必要です。

Controller.php

class StatsController extends JController {
    function display()
     {
        if( !JRequest::getVar( 'view' ) ) {
            JRequest::setVar('view', 'stats' );
        }
        parent::display();
    }
    ...
    ...
}

統計ビュー: (index.php?option=com_stats&view=stats)

class StatsViewStats extends JView
{
    function display($tpl = null)
    {
        $model_helpdesk = & JModel::getInstance('Helpdesk','StatsModel');
    //$model_chart =  & JModel::getInstance('Chart','StatsModel'); 
    //$model_chart =  &$this->getModel('Chart');
    var_dump($model_chart);
    ...
    ...
        parent::display($tpl);
    }
}

問題 : Helpdesk モデルの取得は正常に機能しますが、 Chart モデルの取得は空白のページを返すか、var_dumpで null を返します。この 2 番目のモデルを (コントローラーを変更せずに) 使用するにはどうすればよいですか??

4

1 に答える 1

3

コントローラーで、次のことを行う必要があります。

$view = &$this->getView('Stats', 'html');
$view->setModel($this->getModel('Stats'), true);
$view->setModel($this->getModel('Chart'));
$view->setModel($this->getModel('Helpdesk'));
$view->display();

次に、以下を使用して各モデルにアクセスできます。

$chartModel = $this->getModel('Chart');
$helpdeskModel = $this->getModel('Helpdesk');

ソース

于 2012-03-14T22:24:02.240 に答える