【问题标题】:grocery crud call back杂货杂货回电
【发布时间】:2017-03-23 15:08:43
【问题描述】:

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

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

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

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

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

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

【问题讨论】:

  • 这是我认为可能有用的回调列 $c->callback_column('menu_title',array($this,'_callback_webpage_url'));公共函数 _callback_webpage_url($value, $row) { return "id)."'>$value"; }

标签: php grocery-crud


【解决方案1】:

回调列:void callback_column( string $column , mixed $callback )

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

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

那么它在哪里有用?

假设你有一些字段说timestamp,它在你的表中的值为1490295400,并且你想将它显示为03/24/2017 00:26:40,而不是在你的表中更改,你将调用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);
}

【讨论】:

  • aaahhh 好的,谢谢...所以这只是为了展示。我已经完成了在字段中显示当前日期的工作,但是如果该字段为空,我希望选择存储在数据库中显示的当前日期怎么办。
  • 我已经添加了我用过的日期功能
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-10-24
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-30
  • 1970-01-01
相关资源
最近更新 更多