Yii2 AutoComplete как вставить в поле не id а name?

Использую в Yii2 AutoComplete:
echo $form->field($model, 'city')->widget(AutoComplete::classname(), [
        'clientOptions' => [
            'source' => City::find()->select(['city_id as value', 'name as label'])->asArray()->all()
        ],
        'options'=>[
            'placeholder' => 'Ваш город (начните вводить)',
            'class' => 'form-control form-control-signup input-sm select-registration'
        ]
    ])->label('');

и с ним возникает такая проблема:
начинаешь вводить название города - появляются возможные варианты городов - выбираешь необходимый город и в поле input вставляется его id а хотелось бы name!
Как это возможно реализовать?
  • Вопрос задан
  • 2418 просмотров
Пригласить эксперта
Ответы на вопрос 2
@DuD
Попробуйте 2 варианта:
1) source' => City::find()->select(['name as label'])->asArray()->all()
2) source' => City::find()->select(['name as value', 'name as label'])->asArray()->all()
Ответ написан
webinar
@webinar Куратор тега Yii
Учим yii: https://youtu.be/-WRMlGHLgRg
Вместо
City::find()->select(['city_id as value', 'name as label'])->asArray()->all()

следует
ArrayHelper:map(City::find()->select(['city_id', 'name'])->all(),'name','name');
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы