4

関数を使用して列の値を変更しようとしてい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')); 

このコードはうまく機能します(_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'));

このコードはうまく機能しません(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>;
}

これは食料品のクラッドのバグですか?? それを解決するトリッキーな方法はありますか??

4

1 に答える 1

6

私はトリックを得た。関数を作成し、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
}
于 2013-05-29T11:12:34.050 に答える