Codeigniter 为什么我的数据不能正确地传递到我的视图中?
我有一个模型、视图和控制器没有正确交互,我不知道错误在哪里 首先是控制器。根据,我在这里正确地传递了变量Codeigniter 为什么我的数据不能正确地传递到我的视图中?,codeigniter,variables,Codeigniter,Variables,我有一个模型、视图和控制器没有正确交互,我不知道错误在哪里 首先是控制器。根据,我在这里正确地传递了变量 function view() { $html_head = array( 'title' => 'Estimate Management' ); $estimates = $this->Estimatemodel->get_estimates(); $this->load->view('html_head',
function view() {
$html_head = array( 'title' => 'Estimate Management' );
$estimates = $this->Estimatemodel->get_estimates();
$this->load->view('html_head', $html_head);
$this->load->view('estimates/view', $estimates);
$this->load->view('html_foot');
}
型号(短而甜):
最后是视图,只是为了打印用于初始开发目的的数据:
<? print_r($estimates); ?>
现在,当我导航到此页面时,它是未定义的。但是,我知道$query是定义的,因为当我直接在视图中运行模型代码时,它会工作。文档显示传递给视图的对象必须是关联数组
$data = array(
'estimates' => $estimates
);
$this->load->view('estimates/view', $data);
您正在加载返回的$this->Estimatemodel->get_estimates()
作为视图变量数组。换句话说,$estimates
(假设可以将其视为数组)的所有子项都可以在您的视图中使用。但不是父元素
这里的关键是加载视图时,第二个参数必须是一个值数组,而不仅仅是一个值
$this->load->view('estimates/view', array('estimates' => $estimates));
这应该会得到您正在寻找的结果,事实上,您已经在为html头视图做这些了。即使该视图只有一个变量,它也是作为数组的单个元素传递的:
$html_head = array( 'title' => 'Estimate Management' );
$this->load->view('html_head', $html_head);
差不多两年后,我又回到了这篇文章,它帮助我在一个我正在从事的codeigniter项目中再次解决了这个问题……太棒了!
$this->load->view('estimates/view', array('estimates' => $estimates));
$html_head = array( 'title' => 'Estimate Management' );
$this->load->view('html_head', $html_head);