2016-10-24 2 views
1

Я использую подробный просмотр и Select2 для Kartik, чтобы сохранить список выведенных из списка абонентов из выпадающего списка. В форме:Yii2: Детальный просмотр Kartik & Select2 без сохранения сохраненных значений

<?= $form->field($model, 'attendants')->widget(Select2::classname(), ['data' => $model->attendantList, 'options' => ['placeholder' => Yii::t('app', 'Select...'), 'multiple' => true]]) ?> 

В свете:

[ 
      'attribute' => 'attendants', 
      'format' => 'raw', 
      'type' => DetailView::INPUT_SELECT2, 
      'widgetOptions' => ['data' => $model->attendantList, 'options' => ['placeholder' => Yii::t('app', 'Select...'),'multiple' => true]], 
      'value' => call_user_func(function($model){ 
            $attendants = ''; 
            foreach($model->persons as $person) {$attendants .= Html::a($person->name, ['aux-person-event/index', 'person_id' => $person->id]).'<br/>';} 
            return $attendants; 
          }, $model), 
     ], 

Где $model->attendantList это массив 'ID' & пар 'имя'.

Если я использую стандартный ActiveForm посредством действия обновления, сохраненные значения обычно загружаются в форму при обновлении. Тем не менее, они не используются при использовании DetailView Kartik в режиме редактирования.

Любой ключ?

+0

Вы уверены, что переменная обслуживающего персонала определена в вашей модели? Вы упомянули это в разделе правил? – Jigar7521

ответ

0

Ах, как указано в @ Jigar7521, выясняется, что я использовал атрибут, не определенный в модели как существующий в моей БД, хотя он был определен в разделе правил. Хороший совет. Благодарю.

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