Codeigniter重定向或加载带有模板的视图

Codeigniter重定向或加载带有模板的视图,codeigniter,url-redirection,Codeigniter,Url Redirection,我不知道如何在谷歌上表达这个问题,所以我找不到任何答案 在我的视图文件夹中,我有一个模板文件夹,里面有页眉、导航栏和页脚 每当我从控制器加载视图时,我都必须这样做 $this->load->view('template/header'); $this->load->view('template/navbar'); $this->load->view('pages/pagename'); $this->load->view('template/foo

我不知道如何在谷歌上表达这个问题,所以我找不到任何答案

在我的视图文件夹中,我有一个模板文件夹,里面有页眉、导航栏和页脚

每当我从控制器加载视图时,我都必须这样做

$this->load->view('template/header');
$this->load->view('template/navbar');
$this->load->view('pages/pagename');
$this->load->view('template/footer');
如何使用重定向来执行此操作?我不知道为什么,但每当我看到成功登录或失败的代码片段时,它们总是使用重定向功能,而不是像上面那样的加载视图

例如:

function __construct() {
    parent::__construct();
    if($this->ion_auth->logged_in()==FALSE)
    {
        redirect('pages/login');
    }
}
或者我可以用这个吗?这个还可以接受吗

function __construct() {
    parent::__construct();
    if($this->ion_auth->logged_in()==FALSE)
    {
      $this->load->view('template/header');
      $this->load->view('template/navbar');
      $this->load->view('pages/login');
      $this->load->view('template/footer');
    }
}

在重定向中,您需要使用控制器/方法\u名称

redirect('controllername'); 

在控制器中,创建一个名为login的函数

function login() {
  $this->load->view('template/header');
  $this->load->view('template/navbar');
  $this->load->view('pages/login');
  $this->load->view('template/footer');
}

您可以使用重新映射,而不是构造。如果用户已登录或未登录,则重定向

重新映射

登录


那么重定向也可以用来调用控制器中的方法?我以为这只是为了看风景。此外,它可以从任何控制器调用任何方法吗?它还可以调用同一控制器中的方法吗?
function __construct() {
    parent::__construct();
    if($this->ion_auth->logged_in()==FALSE)
    {
        redirect('controller/login');
    }
}
function login() {
  $this->load->view('template/header');
  $this->load->view('template/navbar');
  $this->load->view('pages/login');
  $this->load->view('template/footer');
}
public function _remap($method, $params = array()){
   if(method_exists($this, $method)){
      if($this->ion_auth->logged_in()==FALSE){
         return call_user_func_array(array($this, $method), $params); //home page
      }
      return call_user_func_array(array($this, 'login'), $params); //if not logged in
  }
  show_404();
}
public function login() {
  $this->load->view('template/header');
  $this->load->view('template/navbar');
  $this->load->view('pages/login');
  $this->load->view('template/footer');
}