2014-10-31 74 views
0

我是新的使用codeIgniter,我很抱歉,如果我問一個愚蠢的簡單問題。我正在爲我的課程項目製作一個簡單的新聞網站,其新聞帖子(如html中的2個框架)在同一頁面(主頁)中的管理員登錄表單。是否可以在一個視圖中加載來自不同控制器和模型的一些函數和類)?從我學到的很多例子來看,它總是隻有登錄頁面而沒有其他列的控制器。我試圖做我認爲是真實的事情,但我試過的一切都沒有奏效。如果有人知道此問題的解決方案,解釋或類似示例,請以任何形式(視頻,網頁鏈接,文檔,任何內容)與我分享解釋。以前感謝..CodeIgniter - 在博客頁面登錄表格

回答

0

如果您需要控制器之間的功能,您應該將其定義爲CI模型或至少一個幫助器。控制器只是模型和視圖之間的接口。您需要創建一個登錄模型,通常具有以下功能:

$user -> getUserInfo() 
$user -> login() 
$user -> logout() 
$user -> register() 
$user -> userExists() 
$user -> isLoggedIn() 
.. 

然後在您的控制器中調用這些模型。

編輯註釋:是的,你可以在視圖中包含視圖,這就像常見的用法。


第一種方法:在控制器中直接

$this->load->view("header"); 
$this->load->view("subpage"); 
$this->load->view("footer"); 

和結果將被具有所附在一起的三個視圖。來源:https://ellislab.com/codeigniter/user-guide/general/views.html


第二種方法:在子頁面視圖

直接:在控制器中分配給變量

$data = array(); 
$data["header"] = $this->load->view("header", NULL, TRUE); 
$data["footer"] = $this->load->view("footer", NULL, TRUE); 
$this->load->view("subpage", $data); 

和在子頁面視圖:

<?php echo $header;?> 
(Sub page view data) 
<?php echo $footer;?> 

第三方法

<?php $this->load->view('header');?> 
(subpage content) 
<?php $this->load->view('footer');?> 

源第二和第三:https://ellislab.com/forums/viewthread/88335/

+0

其實,我的意思是,是否有可能加載一些意見,視圖,或合併一些意見,一種觀點。我正在像html中的frameset一樣思考。對不起,如果我以前的問題很混亂。但上面的答案幫助我登錄類感謝你。 – 2014-11-01 04:48:33

+0

我更新了答案。 – 2014-11-01 18:33:43

+0

最後。謝謝! – 2014-11-01 22:46:25