Not sure what you need to see, this is the index action in my controller
$sql = Suppliers::find()
->with('address')
->orderBy(['shortname' => SORT_ASC]);
$dataProvider = new ActiveDataProvider([
'query' => $sql,
'pagination' => [
'pageSize' => 15,
],
]);
$searchModel = new SuppliersSearch();
$dataProvider = $searchModel->search($_GET);
return $this->render('index', [
'dataProvider' => $dataProvider,
'searchModel' => $searchModel,
]);
This is in my Model
/**
* @return \yii\db\ActiveQuery
*/
public function getAddress()
{
return $this->hasOne(ARAddress::className(), ['id' => 'addressid']);
}
This is the view
echo GridView::widget([
'options' => ['class' => 'table-responsive'],
'dataProvider' => $dataProvider,
'filterModel' => $searchModel,
'summary' => '',
'columns' => [
['class' => 'yii\grid\DataColumn',
'header' => 'Shortname',
'value' => function ($data) {
return Html::a($data->shortname, '/yii/basic/web/supplier/view?id='.$data->shortname, [
'class' => 'view-link',
]);
},
'format' => 'html',
'filter' => '<input type="text" class="form-control" name="SuppliersSearch[shortname]">',
],
'suppliername',
'address.address1',
'address.address2',
'address.postcode',
['class' => 'yii\grid\DataColumn',
'header' => 'Min Order',
'value' => function ($data) {
return '£'.number_format($data->minordervalue,2);
},
'format' => 'raw',
],
'contact',
],
]);