フッターに行の値の合計を表示したい。
いくつかの方法を試しましたが、適切な結果が表示されません。
どんな助けも非常に高く評価されます。
私はカルティックグリッドを使用しています。
私はこれを試しましたYii2: Kartik Gridview sum of a column in footer
私の場合はうまくいきません。
$gridColumns = [
[
'class' => 'kartik\grid\SerialColumn',
'contentOptions' => ['class' => 'kartik-sheet-style'],
'width' => '36px',
'header' => '',
'headerOptions' => ['class' => 'kartik-sheet-style']
],
[
'attribute' => 'vno',
'footer'=>'Total'
],
[
'attribute' => 'fliters',
'label' => 'Total Fuel Consumption Liters',
'footer'=> true // Here i want to display the sum of column filer ( Note : the value in grid of filter is a sum(fuel_liters) )
],
[
'attribute' => 'fuel_rate',
'label' => 'Fuel Rate (Per Ltr.)',
'pageSummary'=>true,
'footer'=>true // Here i want to display the sum of column fuel_rate ( Note : the value in grid of filter is a sum(fuel_rate) )
],
[
'attribute' => 'famt',
'label' => 'Total Fuel Consumption Amount',
'pageSummary'=>true,
'footer'=>true // Here i want to display the sum of column fuel_amount ( Note : the value in grid of filter is a sum(fuel_amount) )
],
];
echo GridView::widget([
'dataProvider'=> $dataProvider,
'filterModel' => $searchModel,
'columns' => $gridColumns,
'showPageSummary' => true
]);
これまでのところ、フッターに合計を印刷することができました
私は私のコントローラーです
$total_ltrs = FuelConsumption::find()->sum('fuel_liters');
$total_amt = FuelConsumption::find()->sum('fuel_amount');
$total_rate = FuelConsumption::find()->sum('fuel_rate');
return $this->render('petrol-report', [
'total_ltrs' => $total_ltrs,
'total_amt' => $total_amt,
'total_rate' => $total_rate,
'model' => $model,
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
そして、すべてのフッター'footer'=>$total_ltrs
'footer'=>$total_rate
にそれぞれ渡されます。'footer'=>$total_amt
From Date と TO Date を検索すると、フィルターごとに結果がグリッドに表示されます。
ただし、フッターの合計の結果は変更されません。グリッドにある行だけをいくつか実行したいと思います。
誰でもこれについて私を助けることができますか??