Yii2, Définir plusieurs Valeur Select2
J'ai la charge select2 de données comme ceci :
$data = ArrayHelper::map(ContactGroups::find()->where(['group_status'=>'ACTIVE'])->asArray()->all(),'group_id', 'group_name');
echo $form->field($model, 'group_id')->widget(Select2::classname(), [
'data' => $data,
'model' => $model,
'language' => 'en',
'options' => ['placeholder' => Yii::t('modules','Pilih Kelompok')],
'pluginOptions' => [
'allowClear' => true,
'multiple' => true,
],
])->label('Kelompok');
$data
variable de retour de résultat :
Array
(
[1] => Tanpa Kategori
[3] => Bisnis
[4] => Kawan
[5] => Bisnis Kerang
[6] => Bisnis Selang
[99] => Keluarga
)
et select2 fonctionne correctement, mais je ne peux pas montrer la valeur sélectionnée ou initial value
. c'est que j'ai raté quelque chose ?
- avez-vous utiliser kartik-select2 widget?
- si vous avez utilisé kartik-select2 widget, vous pouvez simplement assing de la valeur à
$model->group_id
comme$model->group_id = unserialize($model->group_id)
sur la mise à jour si la valeur magasin sérialiser - en fait, je suis en utilisant kartik-select2 widget, mais je n'ai jamais essayé d'utiliser unserialize comme
$model->group_id = unserialize($model->group_id)
. - voir la valeur de
group_id
dans la table DB
Vous devez vous connecter pour publier un commentaire.
vous ajoutez
tags
propriété danspluginOptions
pour une sélection multiple, comme....Vous montrer Démo
Avoir un oeil sur le code de kartik\base\InputWidget ligne 190 :
J'ai trouvé que, lors du chargement de données avec l'AJAX, initiale de multiples valeurs devraient être définies dans les options de[valeur] comme ceci:
tandis que la définition de la valeur à côté de initValueText conduit à une array_combine erreur
Essayez de l'utiliser comme ça.. Au moment de la mise à jour nous avons besoin de prendre déjà des valeurs sélectionnées dans 1 variable et toutes les valeurs de 1 variable.. et l'envoyer à select2.
ici NewsTags[tag_id][] est le modèle et sa colonne. nous ne sommes pas directement appel $model->attribut ici