これは、PDF および EXCEL ファイルを生成するコードに大きく依存します。これらのボタンを「バインド」してファイルを生成する方法はいくつかあります。
- 最初にグリッド ビューをレンダリングする同じアクションで
- CDataProvider を生成する同じコード ベースを使用するさまざまなアクション。
最初のケースでは、対応するファイルを生成するように指示するパラメーターをアクションに渡すことができます。
<?php
public function actionIndex()
{
//Code base to generate the CActiveData provider.
//Check if we are asking for the PDF version
if(isset($_GET["pdf"])){
//Your code to generate the PDF
}elseif (isset($_GET["excel"])) {
//Your code to generate the EXCEL
}else{
//render the view with the Grid
}
}
?>
次に、MyGridClass で、ボタンを対応する URL に向けるだけです。
//For the pdf
Yii::app()->controller->createUrl('', array('pdf' => '1'));
//For the excel
Yii::app()->controller->createUrl('', array('excel' => '1'));
必要に応じて、これを調整して 2 つの個別のアクションを作成できます。