在杂货店搜寻没有发生的事情

时间:2013-03-08 10:40:37

标签: php codeigniter crud grocery-crud

在杂货店中,搜索不会发生在相关的表格中。

只搜索该表字段。

function index()  { 
    $crud = new grocery_CRUD();
    $crud->set_theme('flexigrid');
    $crud->set_table('table_name');
    $crud->display_as('id','Name');
    $crud->callback_column('id', array($this, 'changeName'));
    $output = $crud->render();
} 

function changeName($value, $row)  {
    $new = $this->db->select('name')->where('another_table.id', $row->id)->get('another_table')->result();
    if(!empty($new)){
        return $new[0]->name;
    } else {
        return $value;
    }
}

此处没有搜索名称。

任何人都有解决方案吗?

提前致谢。

2 个答案:

答案 0 :(得分:2)

你好@DelvinPaul:我希望你的问题得到解决。如果未解决,请尝试使用

changeName内调试您的查询
log_message('info','Query: '.$this->db->last_query());
log_message('info','Result Returned: '.print_r($new,true));

将这些语句放在changeName函数中的以下行之后:

$new = $this->db->select('name')->where('another_table.id', $row->id)->get('another_table')->result();

不要忘记在配置文件中更改$config['log_threshold'] = 3;。调试后,请更新您的问题以便更清晰,以便我们回答。

答案 1 :(得分:0)

使用

$crud->set_theme('datatables');

而不是

$crud->set_theme('flexigrid');

你会让它发挥作用。此问题仅适用于flexgrid主题。