放入CDetailView小部件另一个小部件



我想把从另一个小部件显示的文本放入CDetailView小部件的一行。我怎么把这两者联系起来?

$this->widget('zii.widgets.CDetailView', array(
'data'=>$model,
'attributes'=>array(
    array( 
                'label'=>'TextHighlighter',
                'type'=>'raw',
                'value'=>'this system.web.widgets.CTextHighlighter widget',
         ),
), ));

扩展CFormatter,创建一个自定义类,它将调用CTextHighlighter小部件并返回渲染值。

然后将格式化器传递给DetailView

$myCustomformat=new myFormat();
$this->widget('zii.widgets.CDetailView', array(
'data'=>$model,
'formatter'=>$myCustomformat,
'attributes'=>array(
    array( 
                'label'=>'Label',
                'type'=>'texthighligter',
                'value'=>'$model->data',
         ),
), ));

这将调用myFormat类中的formattexthighliter()方法,该方法将返回CTextHighlighter输出。

或者在这里阅读其他方式http://www.yiiframework.com/wiki/278/cgridview-render-customized-complex-datacolumns/

相关内容

最新更新