نمایش total در فوتر Gridveiw در Yii2

برای نمایش اطلاعات در زیر جدول gridview یعنی همون قسمت فوتر از قابلیت showfooter استفاده میکنیم.
به صورت پیش فرض نمایش فوتر footer غیر فعال می باشد .
برای فعال کردن آن باید showFooter را برابر با true قرار دهیم .

 GridView::widget([
        'dataProvider' => $dataProvider,
        'filterModel' => $searchModel,
        'id' => 'admin-crud-id',
        'showFooter' => true,

زمانی که بخواهیم در فوتر چیزی نمایش دهیم : مثلا نمایش مجموع قیمت باید در ستون دلخواه خود از footer استفاده نماییم:

yii2_footer_in_gridview

برای اینکار ابتدا بیرون از gridview کد زیر را قرار می دهیم (مجموع را محاسبه می کنیم ) :

$amount = 0;
    if (!empty($dataProvider->getModels())) {
        foreach ($dataProvider->getModels() as $key => $val) {
            $amount += $val->price;
        }
    }
    $price=  number_format($amount);

در مرحله ی بعدی مجموع به دست آمده را در فووتر نمایش می دهیم :

  [
                'attribute' => 'price',
                'value' => function($data) {
                    if (!is_null($data->price)) {
                        $title = number_format($data->price);
                    } else {
                        $title = "-";
                    }
                    return $title;
                },
                'footer' =>$price',
            ],

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *