我有两个控制器,两个视图和一个母版页:
仪表板控制器:
class Dashboard extends CI_Controller {
public function index()
{
if($this->session->userdata('login') == true){
$data['title'] = 'Dashboard';
$data['content'] = 'pages/dashboard';
$this->load->view('layout/master', $data);
}
else{
redirect('auth');
}
}
客户控制员:
class Customers extends CI_Controller {
public function index()
{
$data['content'] = 'pages/add_customer';
$this->load->view('layout/master', $data);
}
public function add(){
$data['content'] = 'pages/add_customer';
$this->load->view('layout/master', $data);
}
}
我的母版页:
<head>
<meta charset="utf-8" />
<title><?php echo isset($title)? $title: NULL; ?></title>
<?php $this->load->view('layout/header'); ?>
</head>
<body>
<!-- BEGIN PAGE BASE CONTENT -->
<?php $this->load->view($content);?>
<!-- END PAGE BASE CONTENT -->
</body>
问题是当我调用仪表板时,视图在模板中运行,一切都很好。当我打电话给客户时,一切都运行良好,模板就可以了。但是当我从客户控制器调用add方法时,它就像母版页不起作用而模板搞砸了。就像没有CSS或其他东西。 有什么问题? 在此先感谢:)
答案 0 :(得分:1)
我个人不依赖本机CI功能来处理任何模板/视图。我使用Stencil,它不再是主动开发的,但是它在2上工作并且在3上工作。我修改了核心库文件来处理会话和配置变量,但这件事很美。它是我每个CI部署的核心。
Stencil on scotch.io via Github
这绝对不能回答你的问题,当然也应该因为这个原因而被拒绝投票或举报。但CI视图处理很尴尬,所以我从不认可使用它。我不知道为什么Stencil没有内置。