我将$ data传递到每个页面的视图中并自动加载。在观看之前,我有以下内容:
$data['category'] = $this->productModel->listCategories();
我试图找到一种方法,我不必在每个页面视图控制器上都有这个。我已经尝试将代码放在header.php模板中,但我得到了未定义的变量类别。
在标题模板中我有:
<?php foreach ($category as $cat) : ?>
<li><a href="/products/<?php echo url_title($cat->ProductCategory, '-', TRUE); ?>"><?php echo $cat->ProductCategory; ?></a></li>
<?php endforeach; ?>
完全难倒!
我需要它在每个页面上运行,因为它在标题中。
答案 0 :(得分:1)
将此行放在控制器的构造函数中,并在任何视图中引用它,同一控制器内的函数加载。
$ query_result = $ this-&gt; productModel-&gt; listCategories();
将查询结果分配给全局变量,并在您正在使用的控制器的任何视图中使用$ this-&gt; load-&gt; vars($ query_result)。