Как в контроллере изменить GET параметры при рендере вида?

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
rotting
Сообщения: 59
Зарегистрирован: 2016.07.28, 15:50

Как в контроллере изменить GET параметры при рендере вида?

Сообщение rotting » 2019.11.16, 21:40

Вот так переадресовую на главную в случае определенных условий:

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

return $this->redirect('/');
Вот так рендерю вид:

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

return $this->render('order_view',
            [
                'item' => $item,
                'order' => $order,
                'order_items' => $order_items,
            ]);
Но попадаю сюда по ссылке:

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

../order_items/order_view?item_id=62
Так вот в контроллере я хочу удалить этот GET параметр item_id=62 и добавить новый order_id=2
Как это сделать?

yiiliveext
Сообщения: 539
Зарегистрирован: 2019.08.13, 01:49

Re: Как в контроллере изменить GET параметры при рендере вида?

Сообщение yiiliveext » 2019.11.17, 03:25

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

 $itemId = Yii::$app->request->get('item_id');
        if ($itemId == 62) {
            $url = \yii\helpers\Url::current(['item_id' => null, 'order_id' => 2]);
            $this->redirect($url);
        }

unknownby
Сообщения: 35
Зарегистрирован: 2019.11.05, 16:34

Re: Как в контроллере изменить GET параметры при рендере вида?

Сообщение unknownby » 2019.11.18, 08:36

А если через rules?

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

'order_items/order_view/<order_id>' => 'order_items/order_view'

Ответить