Php 使用CGridView创建链接

Php 使用CGridView创建链接,php,yii,Php,Yii,我是Yii框架的初学者,我想在CGridView中使用字段idAccounts.name链接 $post= Sheduale::model()->search(); $this->widget('zii.widgets.grid.CGridView', array( 'id'=>'users-grid', 'dataProvider'=>$post, 'columns'=>array( 'idAccounts.T

我是Yii框架的初学者,我想在CGridView中使用字段
idAccounts.name
链接

$post=  Sheduale::model()->search();  
    $this->widget('zii.widgets.grid.CGridView', array(
    'id'=>'users-grid',
    'dataProvider'=>$post,
    'columns'=>array(
        'idAccounts.TypeId',
        'idAccounts.name',
                'start',
                'end',
        array(
            'class'=>'CButtonColumn',
        ),
    ),
    ));
您可以这样做:

$this->widget('zii.widgets.grid.CGridView', array(
'id'=>'users-grid',
'dataProvider'=>$post,
'columns'=>array(
    'idAccounts.TypeId',
     array(
            "header"=>"The column header",
             "value"=>function($data, $row){
                   echo "<a></a>" //you can set everything you want here
                //$data refers to each data row in the grid. you can use $data->attribute_name for access attributes of your model
              }
           )
            'start',
            'end',
    array(
        'class'=>'CButtonColumn',
    ),
),
));
$this->widget('zii.widgets.grid.CGridView',数组(
'id'=>'users-grid',
“数据提供程序”=>$post,
'列'=>数组(
“idAccounts.TypeId”,
排列(
“标题”=>“列标题”,
“value”=>函数($data,$row){
echo”“//您可以在此处设置所需的一切
//$data引用网格中的每个数据行。您可以使用$data->attribute\u name访问模型的属性
}
)
“开始”,
"完",,
排列(
'class'=>'CButtonColumn',
),
),
));

我想这会对你有所帮助。

一个选择是使用。您可以将其
label
属性设置为希望在链接中显示的任何文本,并使用其属性为每个链接生成URL。
urlExpression
必须是一个包含PHP的字符串(将对其进行计算,以确定链接URL应使用什么)。例如:

$this->widget('zii.widgets.grid.CGridView', array(
    'id' => 'users-grid',
    'dataProvider' => $post,
    'columns' => array(
        'idAccounts.TypeId',
        array(
            'class' => 'CLinkColumn',
            'label' => 'View details'
            'labelExpression' => '$data->idAccounts->name',
            'urlExpression' => '\Yii::app()->createUrl('
                . '"controller/action", '
                . 'array("id" => $data->idAccounts->id)'
            . ')',
            'header' => 'Some Column Header',
        ),
        'start',
        'end',
        array(
            'class'=>'CButtonColumn',
        ),
    ),
));
您需要将
controller/action
(在我的示例
urlExpression
string中)替换为希望链接指向的实际Yii路由,同样,也需要替换为本示例中使用的示例路由参数