我最近一直在玩Codeingiter,它似乎做了工作。但是,我在这里遇到了一些问题。我加载我的视图就像这样,
<?php $this->load->view('default_views/header_view') ?>
<?php $this->load->view($main_content); ?>
<?php $this->load->view('default_views/fotter_view') ?>
这样做可以帮助我保持清晰的观点。但是,我在header_view中有一个菜单,其中包含登录人数的计数器,以及已注册到我网站的人数。是否有任何简单的方法来访问具有此信息的模型?或者我是否需要在所有视图上发送变量以跟踪此情况?听起来像我需要重复我的自我1000次,如果我这样做?
有什么建议吗?
答案 0 :(得分:3)
你几乎可以在任何地方调用get_instance()。
$ci = &get_instance();
$ci->load->model('Model');
$c = $ci->model->counters();
echo $c;
应该是你想要的。
虽然您可以在视图中直接执行此操作,但您至少应创建一个辅助函数来调用模型并在视图中使用它。 (不是最佳实践,但仍然优于内联php。)您可以做的最好的事情是重新考虑您的模型/控制器设计,并弄清楚如何干净地将这些信息带入视图。