yii2mod/yii2-editable

Yii2 editable field extension

Installs: 305 763

Dependents: 13

Suggesters: 0

Security: 0

Stars: 54

Watchers: 10

Forks: 14

Open Issues: 5

Type:yii2-extension

1.5 2018-01-15 15:00 UTC

This package is auto-updated.

Last update: 2024-12-05 03:38:55 UTC


README

Yii2 Editable Widget


Renders a X-Editable Input allowing to use the amazing inline capabilities of X-Editable Plugin.

Latest Stable Version Total Downloads License Build Status

Installation

The preferred way to install this extension is through composer.

Either run

php composer.phar require --prefer-dist yii2mod/yii2-editable "*"

or add

"yii2mod/yii2-editable": "*"

to the require section of your composer.json.

Usage Editable column

  1. In your gridview columns section

Text column:

 [
    'class' => EditableColumn::class,
    'attribute' => 'username',
    'url' => ['change-username'],
 ],

Select column:

[
    'class' => EditableColumn::class,
    'attribute' => 'status',
    'url' => ['change-username'],
    'type' => 'select',
    'editableOptions' => function ($model) {
        return [
            'source' => [1 => 'Active', 2 => 'Deleted'],
            'value' => $model->status,
        ];
    },
],

Allowed column types: text, select, address, combodate, date, datetime

  1. And add to your controller
public function actions()
{
    return [
        'change-username' => [
            'class' => EditableAction::class,
            'modelClass' => UserModel::class,
        ],
    ];
}

Usage Editable widget

  1. As a widget with a model
\yii2mod\editable\Editable::widget([
    'model' => $model,
    'attribute' => 'firstName',
    'url' => '/profile/update',
]);
  1. With ActiveForm
echo $form->field($model, "firstName")->widget(\yii2mod\editable\Editable::class, [
    'url' => '/profile/update',
    'mode' => 'popup',
]);

Support us

Does your business depend on our contributions? Reach out and support us on Patreon. All pledges will be dedicated to allocating workforce on maintenance and new awesome stuff.