【问题标题】:CodeIgniter show template on all controllersCodeIgniter 在所有控制器上显示模板
【发布时间】:2014-03-13 21:17:01
【问题描述】:

我有 2 个控制器、成员和页面。 pages 控制器管理页面重定向。

class Pages extends CI_Controller {

    public function view($page = 'home') {
        if (!file_exists("application/views/pages/" . $page . ".php"))
            show_404();

        $data['title'] = ucfirst($page);

        $this->load->view('templates/header', $data);
        $this->load->view('pages/' . $page, $data);
        $this->load->view('templates/footer', $data);
    }

}

class Members extends CI_Controller {

    public function __construct() {
        parent::__construct();

        $this->load->helper('form');
        $this->load->library('form_validation');
    }

    public function login() {
        //login stuff here
        $this->load->view("pages/login");
    }

}

这些是我的路线:

$route['members/(:any)'] = 'members/$1';
$route['members'] = 'members';

$route['(:any)'] = 'pages/view/$1';
$route['default_controller'] = 'pages/view';

$route['404_override'] = '';

例如,在尝试进入任何页面时,将其设为默认页面home。我可以看到页眉和页脚。 但是如果我尝试转到members/login,我将只获得登录视图的内容,而不是页眉和页脚。

我可以清楚地理解问题,但我需要一个解决方案。我是 MVC 模型的新手。

你能给我什么解决方案?

【问题讨论】:

  • 您的委托人有错字。它说“构造”而不是“构造”

标签: php codeigniter


【解决方案1】:

如果您希望所有页面的布局一致,那么您应该按照以下步骤操作,

在你的项目中打开 application/core 文件夹并创建 MY_Controller.php 文件并将这段代码写入其中

class MY_Controller extends CI_Controller{

 public function __construct(){
      parent::__construct();
 }

 public function loadPage($contentView = false, $data = array()){
      if(!$contentView) $contentView = 'home';
      $this->load->view('header', $data);
      $this->load->view($contentView, $data);
      $this->load->view('footer', $data);
 }

}

现在修改你的控制器

class Pages extends MY_Controller {

public function view($page = 'home') {

    $data['title'] = ucfirst($page);

    $this->loadPage($page, $data);
}

}

【讨论】:

  • 但它们是不同的控制器。我希望用户看到每个页面的页眉和页脚。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-11-07
  • 2016-11-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-06-11
相关资源
最近更新 更多