1
我想學習Codeigniter。我正在嘗試在我的CI應用程序中使用application/core/MY_Controller。 MY_Controller.php爲:擴展核心類Codeigniter - 404錯誤
class MY_Controller extends CI_Controller {
protected $data = array();
function __construct() {
parent::__construct();
}
function render_page($view) {
//do this to don't repeat in all controllers...
$this->load->view('templates/header', $this->data);
//menu_data must contain the structure of the menu...
//you can populate it from database or helper
$this->load->view($view, $this->data);
$this->load->view('templates/footer', $this->data);
}
}
現在我就開始給家裏寫信控制器:
class Home extends MY_Controller {
function __construct() {
parent::__construct();
}
public function view($page = 'home')
{
$this->load->helper('text');
$data['records']= $this->services_model->getAll();
if (! file_exists('application/views/pages/'.$page.'.php'))
{
// Whoops, we don't have a page for that!
show_404();
}
$data['title'] = ucfirst($page); // Capitalize the first letter
$this->load->view('pages/'.$page, $data);
}
我的意見
+pages
+home.php
+templates
+footer.php
+header.php.
以下文件夾中的我的配置和路由文件。
$config['base_url'] = 'http://localhost/~ytsejam/kirmiziblog/';
$config['index_page'] = 'index.php';
$route['default_controller'] = 'pages/view';
$route['(:any)'] = 'pages/view/$1';
我收到404頁未找到錯誤。我如何更改我的應用程序以使用MY_Controller?
你需要調用'home'控制器,而不是'pages'。 – 2012-08-01 14:06:06
$ this-> load-> view('home /'.$ page,$ data); ...像這樣? – ytsejam 2012-08-01 14:08:25
像這樣:'$ route ['default_controller'] ='home/view'; $ route ['(:any)'] ='home/view/$ 1';' – 2012-08-01 14:09:12