yii CButton Column
Как мне изменить ссылки внутри CGridview?
Это с моей страницы просмотра:
$this->widget('zii.widgets.grid.CGridView', array(
'dataProvider'=>$new,
'columns'=>array(
'book.title',
'book.author',
'book.edition',
'date_borrowed',
'borrowed_status',
'date_returned',
'returned_status',
array(
'class'=>'Viewonly',
),
)
));
тогда из моих компонентов:
class ViewOnly extends CButtonColumn {
public $template = '{view}';
}
то, что я хочу, чтобы произошло "ДЛЯ ПРИМЕРА", если я нажму кнопку просмотра в моем CGridview, он перенаправит меня на http://www.google.com/?action=someaction. Как я могу это сделать?
2 ответа
Решение
Вам не нужен отдельный класс кнопок. Сделайте что-то вроде этого:
array(
'class'=>'CButtonColumn',
'template'=>'{view} {google}',
'viewButtonUrl=>'Yii::app()->createUrl("http://google.com/",array("q"=>$data->name))',
'google'=>array(
... Init code for this button here
),
)
Здесь есть документ, вы можете проверить его.
Кстати, документ говорит, что вы можете использовать url
параметр в Array
:
array(
'url' => '', //url comes here
),
Изменить: массив должен быть из columns
,