1

我想在下拉列表中发布组值。如何在值字段中连接id和分组( )?type

CHtml::listData($eventLocationByUser, 'id', 'caption', 'type');

我努力了:

CHtml::listData($eventLocationByUser, 'id'.'type', 'caption', 'type');

但返回空值。

4

1 回答 1

7

由于 value 字段接受匿名函数,因此您可以这样做:

CHtml::listData( 
    $eventLocationByUser, 
    'id', 
    function($loc){ return $loc->id . " " . $loc->type; }
);

这是文档中的示例。


一种替代方法是向模型添加另一个字段(例如 $idtype),每次创建或保存记录时,您也会更新此字段(也许使用行为?)然后您可以使用:

CHtml::listData( $eventLocationByUser, 'id', 'idtype' });

它可能会将业务逻辑从您的视图转移到您的模型,但只有您可以决定是否值得麻烦。

于 2013-05-31T04:59:33.260 回答