2016-03-05 3 views
0

Я пытаюсь отобразить gridview с именем студента в поле каждой строки и динамических столбцов с уроками обоих.Yii2 ArrayDataProvider template

У меня есть проблема: YII2 Activedataprovider custom template. Я использую ArrayDataProvider. Но я не понимаю, как я могу решить свою задачу.

Мне нужен пример с кодом или некоторым алгоритмом.

screenshot

ответ

0

В этом случае вам нужно использовать ArrayDataProvider как вы хорошо сказали.

  1. Для всех требуется три запроса, учащиеся, уроки, заметки и идентификация id.
  2. функция в контроллере, createRelaccion
  3. На ваш взгляд вам нужно

    $provider = new ArrayDataProvider([ 
            'allModels' => $MyCustomModel, 
            'pagination' => [ 
             'pageSize' => 10, 
            ], 
           ]); 
    
    foreach ($ArrayLessons as $content) 
         { 
          $columns[]=[ 
            'label'=>$content,'format'=>'raw', 
            'value' => function($datas,$r,$t,$h){ 
             return '10,11, the exam note'; 
           } 
           ];     
         } 
    

    и эхо

    echo GridView::widget([ 
            'dataProvider' => $provider, 
            'id'=>'Provider_'.$count, 
            'columns' =>$columns, 
            'pjax' => true, 
            'pjaxSettings' => ['options' => []], 
            'panel' => [ 
             'heading' => '<h3 class="panel-title">'.$dat[2].'</h3>', 
            ], 
            'toolbar' => [ 
            ['content'=>$repeat], 
            ], 
            ]); 
    
+0

У меня relaccion в мой контроллер, такие как: данные $ = [ $ studentName1 => [name => 'studentName1', date1 => 10, date2 => 15, ...], $ student Name2 => [name => 'studentName2', date1 => 5, date2 => 25, ...] ]; Я не знаю, что это правильно или нет. Как я использую 'foreach' для заполнения столбцов $ с моим массивом $ data? Мне нужны уникальные даты и уникальные имена для решения этой задачи, но я не знаю, как это сделать через циклы. – phpmaniac

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

  • Нет связанных вопросов^_^