4

我正在使用从数据库中提取的数据数组为我自动生成表的表类。

型号

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 链接到一页数据的列。我知道我可以用手以老式的方式输出表格。然后我可以添加我想要的任何链接,但我希望能够尽可能多地使用自动生成。必须有一种方法可以做一些像链接表格单元格一样常见的事情。有没有人有任何想法?

编辑

用户Java PHP大部分都在下面。这是使它工作的代码:

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;
}

我只需要用锚文本版本替换原始数组中的值。

4

2 回答 2

7

唯一的方法是,在函数get_reports_by_user_id()中,您将遍历所有结果并将<a href>标签添加到 ids。像这样的东西:

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的格式,但上面的代码应该让您大致了解需要做什么。

于 2009-01-08T23:06:08.067 回答
1

一个想法可能是做类似..

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();
于 2009-01-08T23:05:13.543 回答