1. PHP
  2. Yii Framework

Yii 2 – Filter dropdown list pada GridView


Bisa kita lihat, secara default input filter pada GridView merupakan textfield. Dalam kasus ini, misalkan kita memerlukan filter berupa dropdown list untuk kolom is_active dan parent_id. Untuk membuatnya kita perlu memodifikasi kode GridView di atas dengan mengatur property filter dengan nilai array.

Contoh :

'columns' => [
    ['class' => 'yii\grid\SerialColumn'],
    // is_active,
    [
        'attribute' => 'is_active',
        'format' => 'boolean',
        'filter' => [1 => 'Yes', 2 => 'No']
    ],
],

Dengan menambahkan property filter dengan array, input filter pada kolom is_active akan berubah menjadi dropdown list.

Pertanyaan selanjutnya, bagaimana jika nilai pada dropdown list kita ambil dari database. Pada dasarnya caranya sama saja dengan contoh sebelumnya, hanya saja kita perlu mengambil data dari database yang kemudian kita petakan kedalam sebuah array yang sesuai.

Contoh :

'columns' => [
    ['class' => 'yii\grid\SerialColumn'],    
    [
        'attribute' => 'parent_id',                        
        'filter' => ArrayHelper::map(Category::find()->all(), 'id', 'name')
    ],
],

Dengan perubahan kode diatas akan dihasilkan GridView seperti ini :

https://www.lab-informatika.com/
Comments to: Yii 2 – Filter dropdown list pada GridView

Your email address will not be published. Required fields are marked *

Attach images - Only PNG, JPG, JPEG and GIF are supported.

Login

Welcome to Typer

Brief and amiable onboarding is the first thing a new user sees in the theme.
Join Typer
Registration is closed.