杂货店回电

grocery crud call back

我在理解和使用 Grocery crud 回调函数时遇到问题...文档不清楚。

我有 3 张桌子:
1. 团队 $crud->fields('TeamID','Name', 'HomeCountry');
2. Player $crud->fields('PlayerID','Fname','Sname',Title','Role','TeamID'); TeamID = FK to Team
3. 身份证 $crud->fields('PlayerID', 'StartDate', 'EndDate', 'statusID'); PlayerID = FK 到玩家

在卡片的主要 CRUD 列表页面上,我还想显示每张 ID 卡与哪个团队 link 编辑,但是团队和 ID 没有直接设置关系。

这可以通过回调函数实现吗?我有以下代码格式,但我不知道它在做什么或回调函数的每一位实际上意味着什么???

我想从团队中获取所有信息,并仅提取和显示与相关卡片相关的团队名称,该卡片通过 FK 对特定玩家 link。

    $crud->callback_column('teamID', function(){  
        $query = $this->db->query("SELECT * FROM");  
    $rows = $query->result();  
        $var = $rows[0]->;  
        /*  
        foreach ($rows as $row) {  
            $var = $row->;  
            //$var2 = $row->;  
            //$var3 = $row->;  
        }  
        * */  
        //$this->db->query("INSERT INTO  () VALUES );");  
        return ;  
    });  

抱歉,我不知道如何格式化此页面上的代码,这整件事非常令人沮丧。

        function _add_default_date_value()  //this function adds a text value as     display, date is not stored in database (use post to amend later
    {
        $value = !empty($value) ? $value : date("(d/m/y)");
        $return = '<input type="text" name="date" value="'.$value.'"     class="datepicker-input" /> ';
        $return .= '<a class="datepicker-input-clear" tabindex="-1">Clear</a>     (dd/mm/yyyy)';
        return $return;
    }

callback_column : void callback_column( string $column , mixed $callback )

此回调在每一行上运行。它转义自动列值并运行回调。

此回调在每一行上运行。它转义自动列值并运行回调。对于此回调,return value 是必需的,并且必须是 字符串

那么它用在什么地方呢?

假设您有一些字段说 timestamp,其在 table 中的值为 1490295400,并且您希望将其显示为 03/24/2017 00:26:40,而不是更改 table, 你会打电话给 callback_column

/* This is your crud method */
function my_crud()
{
  $crud = new grocery_CRUD();
  ...
  ...
  $crud->callback_column(
           'timestamp',
           array($this,'_callback_convert_to_human_readable')
  );
  ...
  ...

}

/* So this is your callback */
function _callback_convert_to_human_readable($value, $row)
{
     return date("m/d/Y H:i:s", $value);
}