0

eexcelviewのラッパー拡張機能をここに実装しました:http://www.yiiframework.com/extension/toexcel/cgridviewデータをエクスポートします。ただし、現時点では、モデル全体のすべてのレコードをエクスポートする方法しかわかりません。

これはモデルのコントローラーでの私のアクションです

    public function actionExcel()
{
    $fileName = 'Packaging_Metric_Data_Export_'. date("m-d-y");
    // Load data (scoped)
    $model = PackagingMetric::model()->findAll();;


        // Export it
    $this->toExcel($model,
        array(
        //'id',
        'date',
        'room',
        'lot',
        'country',
        'total_labor_hours',
        'total_run_time',
        'std_rate',
        ),
        $fileName,
        array(
            'creator' => 'Data Access Portal',
        ),
        'Excel2007'
    );
}

拡張機能のページのコメントは、この機能を実現するためにこれと同様の方法を使用することを説明しています。しかし、私はこれを機能させることができないようです。

$model = YourModel('search');
$model->type = 1; // This will filter out all the results whose type is 1 
$dataProvider = $model->search();

拡張機能によってエクスポートされるフィルタリングされたcgridviewの結果を取得する方法を誰かが明確にできますか?

4

1 に答える 1

0

このモジュールは使用していませんが、探しているのはCGridViewではなく、何らかのデータプロバイダーです。

そうは言っても、上記のコードには次のものがあります。

    $model = PackagingMetric::model()->findAll(); //removed extra ;

PackagingMetric が何であるかはわかりませんが、CActiveRecord を拡張しているように見え、findAll()メソッドが含まれているため、その行を次のようにすることができます。

$condition = 'lot = 1';
$model = PackagingMetric::model()->findAll($condition);
于 2012-07-27T17:25:45.083 に答える