kartik\grid\FormulaColumn не пересчитывается

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
IIIKET
Сообщения: 116
Зарегистрирован: 2015.06.10, 16:38
Откуда: Kharkiv
Контактная информация:

kartik\grid\FormulaColumn не пересчитывается

Сообщение IIIKET »

Доброго времени суток.

Делаю kartik\grid\GridView с вычесляемыми поями. После редактирования зависемого поля вычисляемое не меняется. Код:

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

[
                        'class' => 'kartik\grid\EditableColumn',
                        'attribute' => 'count',
                        'editableOptions' => [
                            'name' => 'count',
                            'header' => 'Count',
                            'inputType' => \kartik\editable\Editable::INPUT_SPIN,
                            'options' => [
                                'pluginOptions' => ['min' => 0, 'max' => 100],
                            ],
                        ],
                        'hAlign' => 'left',
                        'vAlign' => 'middle',
                    ],
                    [
                        'class' => 'kartik\grid\EditableColumn',
                        'attribute' => 'price',
                        'editableOptions' => [
                            'name' => 'price',
                            'header' => 'Price',
                            'inputType' => \kartik\editable\Editable::INPUT_TEXT,
                        ],
                        'hAlign' => 'left',
                        'vAlign' => 'middle',
                    ],
                    [
                        'class' => 'kartik\grid\FormulaColumn',
                        'header' => 'Total',
                        'value' => function ($model, $key, $index, $widget) {
                            $p = compact('model', 'key', 'index');
                            return $widget->col(2, $p) * $widget->col(3, $p);
                        },
                        'hAlign' => 'right',
                        'vAlign' => 'middle',
                    ],
Само редактирование оттестированно и работает на ура. Но как заставить обновится связанное поле, ума не приложу.
rak
Сообщения: 2181
Зарегистрирован: 2010.11.02, 23:40
Контактная информация:

Re: kartik\grid\FormulaColumn не пересчитывается

Сообщение rak »

обновлять grid судя по всему
IIIKET
Сообщения: 116
Зарегистрирован: 2015.06.10, 16:38
Откуда: Kharkiv
Контактная информация:

Re: kartik\grid\FormulaColumn не пересчитывается

Сообщение IIIKET »

rak писал(а): 2017.03.28, 23:01 обновлять grid судя по всему
Имеешь ввиду вручную? Сам он не умеет?
rak
Сообщения: 2181
Зарегистрирован: 2010.11.02, 23:40
Контактная информация:

Re: kartik\grid\FormulaColumn не пересчитывается

Сообщение rak »

IIIKET писал(а): 2017.03.28, 23:11 Имеешь ввиду вручную? Сам он не умеет?
а с чего бы ему уметь? при инлайновом редактировании обновляется одна ячейка, а не весь грид
urichalex
Сообщения: 994
Зарегистрирован: 2015.08.07, 11:03

Re: kartik\grid\FormulaColumn не пересчитывается

Сообщение urichalex »

У EditableColumn есть свойство refreshGrid. Если в гриде указать pjax и refreshGrid в колонке, то он будет обновлять
IIIKET
Сообщения: 116
Зарегистрирован: 2015.06.10, 16:38
Откуда: Kharkiv
Контактная информация:

Re: kartik\grid\FormulaColumn не пересчитывается

Сообщение IIIKET »

urichalex писал(а): 2017.03.29, 18:54 У EditableColumn есть свойство refreshGrid. Если в гриде указать pjax и refreshGrid в колонке, то он будет обновлять

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

Setting unknown property: kartik\editable\Editable::refreshGrid
Как бы мимо...

Пока что решение такое, но думаю можно и лучше:

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

'pluginEvents' => [
     'editableSuccess' => 'function(event, val, form, data) { $.pjax.reload({container:"#order-items-grid"}); }',
],
urichalex
Сообщения: 994
Зарегистрирован: 2015.08.07, 11:03

Re: kartik\grid\FormulaColumn не пересчитывается

Сообщение urichalex »

IIIKET писал(а): 2017.03.30, 21:24
urichalex писал(а): 2017.03.29, 18:54 У EditableColumn есть свойство refreshGrid. Если в гриде указать pjax и refreshGrid в колонке, то он будет обновлять

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

Setting unknown property: kartik\editable\Editable::refreshGrid
Как бы мимо...

Пока что решение такое, но думаю можно и лучше:

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

'pluginEvents' => [
     'editableSuccess' => 'function(event, val, form, data) { $.pjax.reload({container:"#order-items-grid"}); }',
],
Не Editable а EditableColumn
https://github.com/kartik-v/yii2-grid/b ... mn.php#L54
IIIKET
Сообщения: 116
Зарегистрирован: 2015.06.10, 16:38
Откуда: Kharkiv
Контактная информация:

Re: kartik\grid\FormulaColumn не пересчитывается

Сообщение IIIKET »

urichalex писал(а): 2017.03.30, 22:01
IIIKET писал(а): 2017.03.30, 21:24
urichalex писал(а): 2017.03.29, 18:54 У EditableColumn есть свойство refreshGrid. Если в гриде указать pjax и refreshGrid в колонке, то он будет обновлять

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

Setting unknown property: kartik\editable\Editable::refreshGrid
Как бы мимо...

Пока что решение такое, но думаю можно и лучше:

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

'pluginEvents' => [
     'editableSuccess' => 'function(event, val, form, data) { $.pjax.reload({container:"#order-items-grid"}); }',
],
Не Editable а EditableColumn
https://github.com/kartik-v/yii2-grid/b ... mn.php#L54
Мне кажется Вы прост оне читаете, конфиг выше, там ясно указано:
'class' => 'kartik\grid\EditableColumn',
urichalex
Сообщения: 994
Зарегистрирован: 2015.08.07, 11:03

Re: kartik\grid\FormulaColumn не пересчитывается

Сообщение urichalex »

А ошибка что говорит?
Setting unknown property: kartik\editable\Editable::refreshGrid
rak
Сообщения: 2181
Зарегистрирован: 2010.11.02, 23:40
Контактная информация:

Re: kartik\grid\FormulaColumn не пересчитывается

Сообщение rak »

IIIKET писал(а): 2017.03.31, 00:37 Мне кажется Вы прост оне читаете, конфиг выше, там ясно указано:
'class' => 'kartik\grid\EditableColumn',
вы видать прописали это в editableOptions, потому и ошибка такая
Ответить