Ho due tabelle staff
con colonne id
, name
e attendance
. staff_id
viene utilizzato come chiave esterna nella tabella attendance
.Come ottenere il valore della chiave esterna invece della chiave nella visualizzazione della griglia con la ricerca e il filtraggio in yii 2?
Desidero visualizzare il nome del personale nella griglia di presenza.
presenze modello:
public function getStaff()
{
return $this->hasOne(Staff::className(), ['id' => 'staff_id']);
}
public function getStaffName() {
return $this->staff->name;
}
e index.php ho usato questo codice
<?= GridView::widget([
[
'attribute'=>'staff_id',
'value'=>'StaffName',
],
]); ?>
per ottenere il valore del nome personale. In questo modo sto ottenendo il nome dello staff con successo, ma il problema è che quando faccio la ricerca del nome dello staff in gridview dice "staff_id" dovrebbe essere intero come lo definisco come intero, ma qui voglio cercare il nome dello staff invece di id .
Com'è possibile? Grazie in anticipo
se è stata definita una relazione tra di loro, è sufficiente indicare il nome della relazione anziché il nome della colonna – tinybyte