callback_column不适用于杂货店中的连接表

Fas*_* kk 5 codeigniter grocery-crud

我正在尝试使用callback_column函数更改列值.

$crud = new grocery_CRUD();
$crud -> set_table('booking');
//$crud->set_relation('room_id','rooms','name');
$crud->callback_column('room_id',array($this,'_visitor_details_popup')); 
Run Code Online (Sandbox Code Playgroud)

此代码运行良好(_visitor_details_popup函数返回值room_id)

$crud = new grocery_CRUD();
$crud -> set_table('booking');
$crud->set_relation('room_id','rooms','name');
$crud->callback_column('room_id',array($this,'_visitor_details_popup'));
Run Code Online (Sandbox Code Playgroud)

这段代码效果不好(room_id不改变)

public function _visitor_details_popup($value, $row)
{

    $visitor_details=explode(',',$value);
    return '<a href="#">Name'.$visitor_details[1].'<a>'.'<div class="popup_content">Address'.$visitor_details[2].'Email'.$visitor_details[3].'</div>;
}
Run Code Online (Sandbox Code Playgroud)

这是杂货店的臭虫?任何棘手的解决方法?

Fas*_* kk 7

我有一个技巧.创建一个函数并在callback_column参数上调用它.

$crud = new grocery_CRUD();
$crud -> set_table('booking');
$crud->set_relation('room_id','rooms','name');
$crud->callback_column(unique_field_name('room_id'),array($this,'_visitor_details_popup')); verity 

function unique_field_name($field_name) 
{
    return 's'.substr(md5($field_name),0,8); //This s is because is better for a string to begin               with a letter and not with a number
}
Run Code Online (Sandbox Code Playgroud)