2011-09-19 66 views
2

最近我一直在玩Codeingiter,它似乎在做這項工作。但是,我在這裏遇到了一些問題。我加載我的視圖是這樣的,模型中的Codeigniter信息

<?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倍,如果我這樣做呢?

有什麼建議嗎?

回答

3

您可以從幾乎任何地方調用get_instance()。

$ci = &get_instance(); 

$ci->load->model('Model'); 

$c = $ci->model->counters(); 

echo $c; 

應該是你在追求什麼。

雖然您可以在視圖中直接做到這一點,但至少應該創建一個輔助函數來調用模型並在視圖中使用它。 (不是最佳實踐,但仍然比內聯php更好。)您可以做的最好的事情是重新考慮您的模型/控制器設計,並找出如何將這些信息清晰地呈現在視圖中。

get_instance();