2016-04-12 2 views
0

Вчера я столкнулся с проблемой с ActiveForm от Yii2. Я создаю форму поиска для своего сайта, но когда я загружаю страницу, в которой перечислены все машины (здесь имеет место форма поиска), она выбрасывает . Вызов функции-члена формыName() для исключения. Сначала я изменил DataProvider для использования модели $, $ dataProvider возвращал NULL все время. Когда я сбрасываю данные, возвращающиеся в $ model, я могу видеть все данные, хранящиеся в таблице. (Пока это так хорошо) Моей целью было бы напечатать, например, UserGroups в качестве условия поиска.Yii2 использовать ActiveForm для поиска

Как вы думаете, в чем проблема? Понятно, что ActiveForm не получает никакого соответствующего источника данных, который не пуст, но, как написано, я получил данные в $ model.

файл контроллера:

/** 
    * Aktív gépkocsik listázása 
    * @return string 
    */ 
    public function actionIndex() { 
     $this->vanJogosultag(Url::current(), self::VIEW); 
     $dataProvider = new ActiveDataProvider([ 
      'query' => Gepkocsi::find(), 
     ]); 

     $model = Gepkocsi::find()->all(); 

     return $this->render('lista', array('dataProvider' => $dataProvider, 'model' => $model)); 
} 

_search.php (частично для формы SERACH)

<!-- Gépkocsi felhasználói csoport --> 
     <div class="offset col-xs-8 col-xs-offset-2"> 
      <?= $form->field($model['rendszam'], 'rendszam')->textInput() ?> 
     </div> 

Просмотр файла, в котором я включаю парциальное в списке

<?= $this->render('_search', [ 
     'model' => $model 
    ]); ?> 

Спасибо за ответы! Хорошего дня!

Габор

ответ

0

Почему бы не изменить запрос поставщика данных для поиска весь детали, как модель делает?

$dataProvider = new ActiveDataProvider([ 
    'query' => Gepkocsi::find()->all(), 
]); 
+0

Это потому, что я использую виджет DetailView на той же странице, и этот виджет ждет такого результата. Я пробовал, но он не работает, выдает эту ошибку: ** Свойство query должно быть экземпляром класса, который реализует QueryInterface, например. yii \ db \ Query или его подклассы **. – Gabesz

0

Хорошо, я нашел решение для своей проблемы. Это была моя вина. Решение было просто создайте новый экземпляр модели Gepkocsi и передайте его частичным и вуаля, которая работает. Спасибо за ваши ответы и ваши усилия!

Смежные вопросы