我想使用CodeIgniter Framework创建动态页面。当我点击链接时,它会创建一个取决于id的链接。但没有在页面中显示任何内容。显示"未找到对象。"如何在此处连接控制器和视图?
$ route [' report /:any /:num'] =" home / reportcard";
这是我的代码:
控制器:
公共职能指数(){
$this->load->model("item_model");
$data['records'] = $this->item_model->getAllItems();
$this->load->view('home',$data);
}
function reportcard(){
$this->load->view('main');
}
查看创建链接的位置取决于id:
<div class="row">
<ul class="home-grid">
<?php foreach ($query->result() as $row): ?>
<li>
<a href="<?php echo base_url() ?>report/<?=$row->item ?>/<?=$row->id ?>" class="btn btn-lg btn-warning view-report"><span class="glyphicon glyphicon-list-alt"></span> <br/>
<?=$row->item ?><br/>
<small>Click here for see report</small>
</a>
</li>
<?php endforeach; ?>
</ul>
</div>
为了在main.php视图中查看目的,我刚刚添加了#34; Hello World&#34;。但它没有表现出任何东西。我怎样才能得到这个观点?
答案 0 :(得分:0)
https://www.codeigniter.com/user_guide/general/views.html 检查“创建循环”部分
$ data必须是一个数组,然后可以在您的视图中访问它,如
foreach ($records as $record) :
答案 1 :(得分:0)
也许更好的解决方案是创建In[71]: pd.DataFrame({'gre': [1,2,3], 'gpa': ['a', 'b', 'c']}, columns=['gre', 'gpa'],
index=['x', 'y', 'z'])
Out[71]:
gre gpa
x 1 a
y 2 b
z 3 c
代码并从视图中提交您想要的任何内容。
然后在控制器中你可以添加:
In[72]: pd.DataFrame({'gre': [1,2,3], 'gpa': ['a', 'b', 'c']}, index=['x', 'y', 'z'])
Out[72]:
gpa gre
x a 1
y b 2
z c 3
查看codeigniter documentation
答案 2 :(得分:0)
您的reportcard功能应如下所示:
function reportcard($id){
$data['report'] = $this->item_model->getReport($id);
$this->load->view('main', $data);
}
路线应该像:
$route['report/:num'] = "home/reportcard/$1";
视图应该像:
<div class="row">
<ul class="home-grid">
<?php foreach ($query->result() as $row): ?>
<li>
<a href="<?php echo base_url() ?>report/<?=$row->id ?>" class="btn btn-lg btn-warning view-report"><span class="glyphicon glyphicon-list-alt"></span> <br/>
<?=$row->item ?><br/>
<small>Click here for see report</small>
</a>
</li>
<?php endforeach; ?>
</ul>
</div>
然后在主视图中,您可以访问以下数据:
print_r($report);