マイコントローラ:Yii2未定義のインデックス
$params = Yii::$app->request->queryParams;
$query4 = (new \yii\db\Query())
->select(['monthsubmit', 'modeler'])
->from('sku3d')
->groupBy(['monthsubmit', 'modeler'])
->orderBy(['monthsubmit'=>SORT_DESC]);
$query4->andFilterWhere(['like', 'monthsubmit', $params['monthsubmit']])
->andFilterWhere(['like', 'modeler', $params['modeler']]);
$dataProvider4 = new ActiveDataProvider([
'query' => $query4,
]);
MYビュー:
<?php echo GridView::widget([
'dataProvider' => $dataProvider4,
'filterModel' => true,
'pjax'=>true,
'panel' => [
'type' => GridView::TYPE_PRIMARY,
'heading' => '<h3 class="panel-title"><i class="glyphicon glyphicon-user"></i>Submitted SKU by Month</h3>',
],
'columns' => [
// 'monthsubmit',
[
'attribute'=>'monthsubmit',
'filter' => Html::input('string', 'monthsubmit')
'width'=>'310px',
'group'=>true, // enable grouping
],
[
'attribute'=>'modeler',
'width'=>'180px',
'filter' => Html::input('string', 'modeler')
'group'=>true, // enable grouping
],
]
]);
?>
私は私のコントローラとその作業にsqlDataProviderを作成しました。私の問題は、私はグリッドビューの検索モデルを使用していないので、私はフィルタオプションを作成しようとするとき、それはエラーUndefined index: monthsubmit
を返します。
私が間違っている場所を教えてください。
ありがとうございます。お使いのコントローラで
として行う必要があり、あなたのモデルの検索規則にこれを追加しましたか? –
これは、要求に 'monthsubmit'という名前のクエリパラメータがないことを意味します。 – paul
@paulありがとうございます、どうすれば修正できますか?私はqueryParamsの動作を実際に理解していません –