2015-04-20 22 views
11

Sto lavorando con Yii 2, ed è la griglia per mostrare le informazioni.Come cambiare lo sfondo di 1 riga in Yii2 Gridview

Ora, il mio problema è che ogni volta che un utente esegue la scansione di due numeri seriali e/o indirizzi MAC identici, dovrebbe evidenziare la riga (cambia colore in rosso) e mostrare qualche segno di errore o altro.

Screenshot: Current Grid View

Quello che voglio farlo sembrare come:

Desired Grid Highlighting

Sono nuovo di Yii2 e non so esattamente come lo fanno con il GridView . Ho fatto ricerche su questo specifico problema ma non ho trovato nulla.

Codice in GridView (Niente di speciale)

<?= GridView::widget([ 
    'id' => 'scan-batch-grid', 
    'dataProvider' => $dataProvider, 
    'columns' => [ 
     ['class' => 'yii\grid\SerialColumn'], 
     ['class' => 'yii\grid\CheckboxColumn'], 
     [ 
      'attribute' => 'product_ID', 
      'value' => 'product.name' 
     ], 
     'SN', 
     'MAC', 
     [ 
      'class' => 'yii\grid\ActionColumn', 
      'urlCreator' => function ($action, $model, $key, $index) { 
        return Url::to(['scan-batch/view', 'id' => $key, 'scan' => $model->scan_batch_ID]); 
      }, 
      'buttons' => [ 
       'update' => function ($url, $model, $key) { 
        return ''; 
       }, 
       'delete' => function ($url, $model, $key) { 
        return ''; 
       }, 
      ], 
     ], 
    ], 
]); ?> 

Qualcuno mi potrebbe aiutare? Un link o anche un Q/A leggermente rilevante sarebbe apprezzato!

EDIT

voglio solo sapere come cambiare il colore di una sola fila, posso fare i controlli io! :)

risposta

3

Grazie per aver postato la tua risposta Paramone. Ha funzionato alla grande

Qui è la mia realizzazione:

<?= GridView::widget([ 
    'dataProvider' => $dataProvider, 
    'rowOptions' => function ($model) { 
     if ($model->name == 'test') { 
      return ['class' => 'info']; 
     } 
    }, 
+0

Non è un problema a tutti, sono contento che ti ha aiutato! ;) – Paramone