【问题标题】:How to create a single line command in yii CGridView?如何在 yii CGridView 中创建单行命令?
【发布时间】:2013-02-03 11:28:29
【问题描述】:

代码如下:

$this->widget('zii.widgets.grid.CGridView', array(
....
....
'columns'=>array(
    ....
    ....
    array(
    'name'=>'owner_name', 
    'value'=> 'isset($data->owner)?$data->owner->getProfile($data->owner->u_type)->e_last_name:"UnKnown"'),
    ....
    ....
    ),
),

));

变量 $data->owner->u_type 的值为 'e' 或 'w' 并且整个 $data->owner->getProfile($data->owner->u_type) 是一个对象。我想拥有

'value'=> 'isset($data->owner)?$data->owner->getProfile($data->owner->u_type)->***$data->owner->u_type***_last_name:"UnKnown"')

所以我可以同时处理 e_last_name 和 w_last_name。问题是 eval 函数显示解析错误。我知道我可以声明一个函数并在该函数中执行此任务。我想知道有没有办法直接在代码中做到这一点?

【问题讨论】:

    标签: php frameworks yii


    【解决方案1】:
    'value'=> isset($data->owner) ? $data->owner->getProfile($data->owner->u_type)->e_last_name : "UnKnown",
    

    还是我听不懂?

    【讨论】:

    • $data->owner->u_type 是 'e' 或 'w'。这意味着我不知道声明了哪个变量:e_last_name 还是 w_last_name?我认为我应该以访问 ?_last_name 和 ? 的方式更改 e_在 $data->owner->u_type 中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-03-30
    • 2012-11-01
    • 1970-01-01
    • 2012-10-07
    相关资源
    最近更新 更多