这是我第一次尝试hmvc,但它出了问题。。。我正试图通过不同的模块来分隔我的站点区域。然后,我的意图是使用hmvc的_auth来控制访问。这是我最初的结构:
/application
/modules <-- hmvc
/public_zone
/controller
public_zone.php
/view
...
/private_zone
...
因此,为了做到这一点(在核心和第三方文件夹上安装hmvc),我尝试将"public_zone"控制器设置为"default_controller"他的任务是加载根页面('localhost'),但*返回404错误*
这是我的public_zone.php文件:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Public_zone extends MX_Controller {
public function index()
{
$this->load->view('include/header');
$this->load->view('frontpage');
$this->load->view('include/footer');
}
}
也许问题出在routes.php(application/config/routes.php)文件上?我试试这个:
$route['default_controller'] = "public_zone";
$route['404_override'] = '';
有人能告诉我我做错了什么吗我肯定误解了一些hmvc的概念。。。但事实是,我不知道为什么它不起作用:(
首先,保持CI结构不变很重要。所以你需要这样的结构:
/application
/controllers
public_zone.php
/views
frontpage.php
/include
header.php
footer.php
/models
当然,您还需要CI.附带的其他文件夹
其次,您需要对控制器进行一些更改才能使其工作。
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class Public_zone extends CI_Controller {
public function __construct()
{
parent::__construct();
}
public function index()
{
$this->load->view('include/header');
$this->load->view('frontpage');
$this->load->view('include/footer');
}
}
经过这些更改后,它应该可以工作:)还请务必阅读用户指南:http://codeigniter.com/user_guide/
这可能会花费你一些时间阅读,但以后会节省你很多时间。
祝你好运!