своя DataColumn с логикой

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
kukuruku
Сообщения: 1318
Зарегистрирован: 2011.02.14, 11:36

своя DataColumn с логикой

Сообщение kukuruku »

есть несколько таблиц . у каждой есть колонка active и значения 0 или 1, отображается в виде символов v или х
при клике на значение v или х значение active меняется на противоположное, через jquery запрос
на данный момент код разделен в вью,контроллере,и файл js, еще есть файл ассет с подключением js файла

Код: Выделить всё

файл view
\app\assets\ShopAsset::register($this);

[
                'attribute' => 'active',
                'format' => 'raw',
                'filter' => ['No', 'Yes'],
                'value' => function ($model) {
                    if ($model->active) {
                        return '<span class="glyphicon glyphicon-ok status-disable" style="cursor: pointer; color: green;"></span>';
                    } else {
                        return '<span class="glyphicon glyphicon-remove status-enable" style="cursor: pointer; color: red;"></span>';
                    }
                },
            ],
            
файл контроллер
$request = Yii::$app->request;

        $provider = Provider::findOne($request->post('id', 0));

        if ($provider === null) {
            return;
        }

        $provider->active = $request->post('status', 0);
        $provider->save(false);
как можно все запихнуть в компонент DataColumn, и использовать просто добавив в вью ['class' => \app\component\activeDataColumn::class],
kukuruku
Сообщения: 1318
Зарегистрирован: 2011.02.14, 11:36

Re: своя DataColumn с логикой

Сообщение kukuruku »

так вопрос был скорее в том-а можно ли в класс yii\grid\DataColumn впихнуть js и обработку action? у кого то есть успешный опыт использования?
unknownby
Сообщения: 749
Зарегистрирован: 2019.11.05, 16:34
Контактная информация:

Re: своя DataColumn с логикой

Сообщение unknownby »

kukuruku писал(а): 2023.03.29, 21:16 так вопрос был скорее в том-а можно ли в класс yii\grid\DataColumn впихнуть js и обработку action? у кого то есть успешный опыт использования?
Если так подумать, то нет ничего невозможного, просто придётся вам делать обертку над стандартным решением и свои дополнительные вещи реализовывать. Это как вариант :)
Аватара пользователя
SiZE
Сообщения: 2813
Зарегистрирован: 2011.09.21, 12:39
Откуда: Perm
Контактная информация:

Re: своя DataColumn с логикой

Сообщение SiZE »

kukuruku писал(а): 2023.03.29, 21:16 так вопрос был скорее в том-а можно ли в класс yii\grid\DataColumn впихнуть js и обработку action? у кого то есть успешный опыт использования?
Если action контроллера, то конечно нельзя. Для впихунть JS есть https://github.com/yiisoft/yii2/blob/ma ... Column.php

Немного поковыйрятесь под капотом, у кнопки delete есть data-confirm и data-method
Ответить