CodeIgniter表类:从生成的单元格添加链接
我正在使用table类,它可以从数据库中提取的数据数组中自动生成一个表 型号:CodeIgniter表类:从生成的单元格添加链接,codeigniter,anchor,code-generation,Codeigniter,Anchor,Code Generation,我正在使用table类,它可以从数据库中提取的数据数组中自动生成一个表 型号: function get_reports_by_user_id($userid) { return $this->db->get_where('ss2_report',array('userid' => $userid))->result_array(); } function index() { echo $this->table->generate($this
function get_reports_by_user_id($userid)
{
return $this->db->get_where('ss2_report',array('userid' => $userid))->result_array();
}
function index()
{
echo $this->table->generate($this->mymodel->get_reports_by_user_id('1234'));
}
控制器:
function get_reports_by_user_id($userid)
{
return $this->db->get_where('ss2_report',array('userid' => $userid))->result_array();
}
function index()
{
echo $this->table->generate($this->mymodel->get_reports_by_user_id('1234'));
}
当控制器工作时,它最终将被移动到视图中。这生成的表很好,但我想添加一个指向字段的链接。例如,id
列,它允许我链接到一页数据以获取该报告的id。我知道我可以手工以老式方式输出该表。然后我可以添加任何我想要的链接,但我希望能够尽可能多地使用自动生成。必须有一种方法来做一些像链接表格单元格一样常见的事情。有人有什么想法吗
编辑:
function get_reports_by_user_id($userid)
{
return $this->db->get_where('ss2_report',array('userid' => $userid))->result_array();
}
function index()
{
echo $this->table->generate($this->mymodel->get_reports_by_user_id('1234'));
}
用户javaphp基本上就在下面。下面是使其工作的代码:
function get_reports_by_user_id($userid)
{
$rows = $this->db->get_where('ss2_report',array('userid' => $userid))->result_array();
foreach ($rows as $count => $row)
{
$rows[$count]['id'] = anchor('report/'.$row['id'],$row['id']);
}
return $rows;
}
我只需要用锚文本版本替换原始数组中的值。一个想法可能是执行以下操作:
foreach ($row in $this->mymodel->get_reports_by_user_id('1234'))
{
$row->id = anchor(site_url(array('report', 'user', $row->id)), $row->id);
$this->table->add_row($row);
}
$this->table->generate();
唯一的方法是,在函数
get\u reports\u by\u user\u id()
中,循环遍历所有结果,并将
标记添加到id中。大概是这样的:
function get_reports_by_user_id($userid)
{
$rows=$this->db->get_where('ss2_report',array('userid' => $userid))->result_array();
foreach ($rows as $row)
{
$row->id=anchor('site.com/some_controller/some_function/'.$row->id,$row->id);
}
return $rows;
}
我不使用CodeIgniter的数据库库,所以我不确定它返回的是什么格式的
$rows
,但上面的代码应该能让您大致了解您需要做什么。谢谢,这基本上是正确的。我唯一需要做的更改是在我编辑的问题中发布的。您可以不使用$count,而是:foreach($count=>$row的行数)和$count将随着每次迭代而自动递增再次感谢,用改进后的代码进行了更新。