2011-08-06 163 views
0

根據上一個問題,我正在爲codeigniter設置HMVC擴展。 https://bitbucket.org/wiredesignz/codeigniter-modular-extensions-hmvc/wiki/Home 不幸的是,我找不到很多文件的方式。CodeIgniter HMVC設置

我很困惑如何設置我的文件夾。我已經複製了third_party中的MX文件夾以及核心文件夾中的文件。之後,我創建了一個application/modules文件夾。從那裏我想創建一個橫幅滑塊小部件。我在模塊中創建了一個名爲'slider'的子文件夾,其中包含'controllers','models'和'views'文件夾。在我的應用程序/ modules/slider/controllers /文件夾中,我有一個名爲main.php的控制器。在我的應用程序/模塊/滑塊/模型/文件夾中我有一個名爲slider_model.php的模型。首先,這是一個適當的文件夾結構嗎?如果是這樣,這是我遇到的問題。

加載網站我的welcome.php控制器看起來是這樣的:

<?php if (! defined('BASEPATH')) exit('No direct script access allowed'); 

class Welcome extends CI_Controller { 

/** 
* Index Page for this controller. 
* 
* Maps to the following URL 
*  http://example.com/index.php/welcome 
* - or - 
*  http://example.com/index.php/welcome/index 
* - or - 
* Since this controller is set as the default controller in 
* config/routes.php, it's displayed at http://example.com/ 
* 
* So any other public methods not prefixed with an underscore will 
* map to /index.php/welcome/<method_name> 
* @see http://codeigniter.com/user_guide/general/urls.html 
*/ 
public function index() 
{ 
    $this->load->view('header'); 
    $this->load->view('welcome_message'); 
    $this->load->view('footer'); 
} 
} 

/* End of file welcome.php */ 
/* Location: ./application/controllers/welcome.php */ 

裏面的welcome_message.php視圖我有以下幾點:

<? echo Modules::run("slider/main/getcontent/"); ?> 

然後,主控制器我裏面有這個:

<?php 
class Main extends MX_Controller{ 
function __construct(){ 
    parent::__construct(); 
    $this->load->model('slider/Slider_model','Slider'); 
} 

function getcontent(){ 
    // 
    //echo $this->Slider->test_conn(); 
    echo "Testing..."; 
} 
} 

?> 

就這樣我得到這個錯誤:致命錯誤:不能r edeclare class CI in /homepages/15/d94236848/htdocs/application/third_party/MX/Base.php on line 57

我錯過了什麼?

+0

想通了。在我的welcome.php控制器上,我需要對其進行更改,以便擴展MX_Controller而不是CI_Controller。我還需要刪除welcome_message.php中模塊調用中的最後一個斜槓。 – LoneWolfPR

+1

如果你已經回答了這個問題,請添加它作爲答案,然後標記回答的問題。 – cwallenpoole

回答

1

根據上面的評論,我重新發布我的評論作爲答案。

想通了。在我的welcome.php控制器上,我需要對其進行更改,以便擴展MX_Controller而不是CI_Controller。我還需要刪除welcome_message.php中模塊調用中的最後一個斜槓。