通过链接发送ID - Yii

时间:2014-02-13 07:18:03

标签: php yii yii-chtml

在我看来,我有一个在Controller中调用函数的链接。控制器中的功能是制作pdf。它应该只生成$model->id的pdf。但是我无法通过我的链接将$ model-> id的值发送到控制器。

查看

<?php
        echo CHtml::link('Save/Print',array('print'),array('class'=>'btnPrint btn btn-info','target'=>'new'));
    ?>

<?php
    $this->widget('zii.widgets.CDetailView', array(
        'data'=>$model,
        'attributes'=>array(
            'id',
            'name',
            'father_name',
            'cnic',
            'customername',
        ),
    )); 
?>

控制器

  public function actionPrint($id) {
    ini_set('max_execution_time',360);
    ini_set('memory_limit', '128M');

    $mPDF1 = Yii::app()->ePdf->mpdf('','A4');

    $mPDF1->SetHTMLHeader('<h3 style="text-align: center;">'.mb_strtoupper(str_replace('Hello','',Yii::app()->name),'UTF-8').'</h3>');

    // $id=35;
    $records = Candidate::model()->findByPk($id);
    $html = '';
    $html .= $this->renderPartial('view', array('model'=>$records),true);
    $mPDF1->WriteHTML($html, false);
    $mPDF1->Output();
}

我如何发送id的值?

1 个答案:

答案 0 :(得分:1)

像这样的singel链接

// $model->id is the id you want to send
echo CHtml::link(
    'Save/Print',
     Yii::app()->createUrl('Save/Print' , array('id' => $model->id)),
     array('class'=>'btnPrint btn btn-info','target'=>'_blank'));

如果你想在网格中

 $this->widget('zii.widgets.CDetailView', array(
        'data'=>$model,
        'attributes'=>array(
            array(
                'name' => 'id',
                'value' => 'echo CHtml::link(
                    "Save/Print",
                    Yii::app()->createUrl("Save/Print" , array("id" => $data->id)),
                    array("class"=>"btnPrint btn btn-info","target"=>"_blank"));',
                'type' => 'raw',
            ),
            'name',
            'father_name',
            'cnic',
            'customername',
        ),
    ));