Yii2 Select2 始终显示占位符而不是数据库值

问题描述 投票:0回答:1

我的 Yii2 Select2 字段有问题,因为它没有从数据库中检索插入的值,始终显示占位符。 我尝试使用一种方法从数据库中检索插入的值并将它们放入

'value'
字段属性中,但是在保存表单时,它们导致重复条目,这意味着真正的记录仍在字段中但有点隐藏。 我该怎么做才能在 Select2 中显示插入的值?

这是表单字段

<div class="col-md-4">
    <?php $utenti = ArrayHelper::map(Profile::getListUtentiAttivi(), 'user_id', 'name');
        echo $form->field($model, 'assegnazione', ['options' => [
            'class' => 'form-group form-group-default form-group-default-select2']])
                ->widget(Select2::className(), [
                    'data' => $utenti,
                    'options' => [
                        'placeholder' => 'Sottoscrittori...',
                        'multiple' => true,
                    ],
                    'pluginOptions' => [
                        'allowClear' => true,
                        'multiple' => true,
                    ],
                    'theme' => Select2::THEME_DEFAULT,
        ])->label('Sottoscrittori');?>
</div>

我尝试在“选项”内添加类似

'value' => methodToGetInsertedValues()
之类的内容,但正如我之前所说,它给出了重复条目

的错误
php yii yii2 yii2-advanced-app
1个回答
0
投票

设法通过在我的动作控制器中设置值来解决问题。 我检索了记录将它们分配给字段值,并在保存模型之前将它们全部删除。

类似的东西

$model->modelField = ModelName::getRecords($model->id);
然后在保存模型之前

ModelName::deleteAll(['id' => $model->id]);
    
© www.soinside.com 2019 - 2024. All rights reserved.