0

振り返ってみると、HMVC 構造が最適だったのかもしれません。

すべてのコントローラーに次のビューをロードします。

$this->load->view('header');
$this->load->view('DEPENDING');
$this->load->view('header');

私のヘッダービューには、ホーム |表示するメニューがあります。受信トレイ | などでお問い合わせください。ここで、このホームのような新しいメッセージの数を読み込みたいと思います| 受信トレイ(4) | お問い合わせください。私が間違っていなければ、毎回クエリを介して4つのほとんどがロードされます。次に、すべてのコントローラーにモデルへの呼び出しを含める必要があります。例のように

$inbox['new_messages'] = $this->Call_the_model->get_new_messages(); // user id go through session

$this->load->view('header', $inbox);
$this->load->view('DEPENDING');
$this->load->view('header');

私は正しいですか?HMVC を使用していない場合でも、使用する簡単な解決策はありますか?

4

1 に答える 1

2

アイデアの1つは-

http://ellislab.com/codeigniter/user-guide/general/core_classes.html

class MY_Controller extends CI_Controller {
    function __construct()
    {
        parent::__construct();
        //load your model
        $inbox_new_messages = $this->Call_the_model->get_new_messages();
        //save in session
        $this->session->set_userdata('sess_inbox_new_messages', $inbox_new_messages);
    }

}

次に、コントローラーを新しい MY_Controllers で拡張し、

class Welcome extends MY_Controller {

    function __construct()
    {
        parent::__construct();
    }

 }

ビューファイルで-そのセッション変数が設定されているかどうかを確認し、番号を表示します。それが役立つことを願っています。

于 2013-11-05T13:00:20.470 に答える