Skip to content

Latest commit

 

History

History
116 lines (88 loc) · 4.09 KB

README.md

File metadata and controls

116 lines (88 loc) · 4.09 KB

Select2 widget for Yii2 framework


php-version PHPUnit PHPUnit Codecov Infection

Installation

The preferred way to install this extension is through composer.

Either run

composer require --prefer-dist yii2-extensions/select2:^0.1

or add

"yii2-extensions/select2": "^0.1"

to the require section of your composer.json file.

Usage

Dropdown list

use Yii2\Extension\Select2\Select2;

<?= $form->field($model, 'user_id')->widget(Select2::className(), [
        'items' => ArrayHelper::map(User::find()->all(), 'id', function($model) {
            return $model->username . " <{$model->email}>";
        }),
        'clientOptions' => [
            'placeholder' => 'User',
            'allowClear' => true,
        ],
        'clientEvents' => [
            'change'=>'function (e) {
                console.log("Select2 change.");
            }',
        ],
    ]) ?>

Multiple aka Tag mode input

use Yii2\Extension\Select2\Select2;

<?= Select2::widget([
        'name' => 'InputName',
        'items' => ArrayHelper::map(User::find()->all(), 'id', function($model) {
            return $model->fio . " <{$model->email}>";
        }),
        'options' => [ 
            'multiple' => true,
        ]
        'clientOptions' => [
            'placeholder' => 'User',
            'allowClear' => true,
        ]
    ]) ?>

Properties of the widget

For more details see: https://github.com/select2/select2

Special Thanks

This code was initially developed by contributors at yii2-cms and hosted at repo: https://github.com/yii-cms/yii2-select2. We thank them all. For continuity and maintenance we have moved a copy here.

Quality code

static-analysis phpstan-level StyleCI

Support versions Yii2

Yii20 Yii22

Testing

Check the documentation testing to learn about testing.

Our social networks

Twitter

License

The MIT License. Please see License File for more information.