最佳结构Codeigniter,恒定的顶级菜单

时间:2013-11-05 10:58:45

标签: php codeigniter templates navigation

当我回顾时,也许HMVC结构会是最好的。

我在每个控制器中加载以下视图。

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

在我的标题视图中,我有一个显示 Home |的菜单收件箱|联系我们等等。现在我想加载你有多少新消息 Home |收件箱(4) |接触。如果我没有错,那么每次最常加载4个查询。然后,我需要在EVERY控制器中包含对模型的调用。比如说。

$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?

1 个答案:

答案 0 :(得分:2)

其中一个想法是 -

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();
    }

 }
在视图文件中

- 检查是否设置了该会话变量并显示该数字。 希望有所帮助。