Php 斜柱和过滤器

Php 斜柱和过滤器,php,yii,Php,Yii,我使用框架YII。我将从网格中为列表中的电子邮件创建链接。我补充说: array( 'class'=>'CLinkColumn', 'header'=>'e-mail', 'labelExpression'=>'$data->email', 'urlExpression'=>'"mailto:".$data->email', ), 这工作正常,但现在我没有列过滤器。CLinkColumns没有方法筛选器。我如何制作链接mail

我使用框架YII。我将从网格中为列表中的电子邮件创建链接。我补充说:

array(
    'class'=>'CLinkColumn',
    'header'=>'e-mail',
    'labelExpression'=>'$data->email',
    'urlExpression'=>'"mailto:".$data->email',
),
这工作正常,但现在我没有列过滤器。CLinkColumns没有方法筛选器。我如何制作链接mailto:并使用过滤器进行过滤?

像这样试一试--


您也可以尝试以下方法:

array(
   'name' => 'email',
   'header' => 'e-mail',
   'type' => 'raw',
   'value' => 'CHtml::link($data->email,"mailto:".$data->email)'
),

不能对CLinkColumn使用筛选器


Yii开发人员讨论了在
CLinkColumn
中添加
'name'
,如下所示:

他们决定反对:

。。。没有必要进一步“复杂化”[CLinkColumn],因为这只是代码的重复或解决问题的“黑客”

说:

CLinkColumn仅用于简单用途。如果您需要更多的选项,请考虑使用值。 这是他们建议的备选方案:

array(
  'name' => 'field_name',
  'type' => 'raw',
  'value' => 'CHtml::link($data->field_name,$data->field_name)'
),

请注意,可能需要使用“type”=>“raw”,否则将显示为文本而不是超链接。
array(
  'name' => 'field_name',
  'type' => 'raw',
  'value' => 'CHtml::link($data->field_name,$data->field_name)'
),