Yii2 render

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
Аватара пользователя
knowo
Сообщения: 1
Зарегистрирован: 2017.04.09, 14:10

Yii2 render

Сообщение knowo »

Добрый день!

Я начинающий Yii2-программист. Объясните, пожалуйста, следующий момент:

У меня есть ссылка на странице app/views/site/product.php:

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

$url = Url::to(['site/product', 'id' => Html::encode($product->id)]);
Это ссылка на контроллер site и действие product + GET-параметр id.

В контроллере site в действии product происходит некоторая обработка и возвращаемся вновь к представлению product:

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

return $this->render('product', ['products' => $products]);
Но GET-параметр сохраняется в адресной строке сохраняется. Как сделать так, чтобы после

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

return $this->render('product', ['products' => $products]);
его не было?

Аватара пользователя
rodion_zlobin
Сообщения: 207
Зарегистрирован: 2017.01.11, 16:33

Re: Yii2 render

Сообщение rodion_zlobin »

использовать POST

Аватара пользователя
Alexum
Сообщения: 681
Зарегистрирован: 2016.09.26, 10:00

Re: Yii2 render

Сообщение Alexum »

Если возвращаетесь в тот же view, то может из него и не уходить? Не рассматривали возможность использования PJAX ? У вас видимо какой-то список продуктов изменяется. Выводите его виджетом (GridView или ListView), оборачиваете в Pjax. Совершаете ваши манипуляции через ajax и вызываете обновление контейнера pjax.

someweb
Сообщения: 552
Зарегистрирован: 2017.03.09, 10:12

Re: Yii2 render

Сообщение someweb »

Делайте redirect, если GET
или POST + refresh
Чтобы правильно задать вопрос, нужно знать бо́льшую часть ответа. Роберт Шекли.

sosnovskiy
Сообщения: 239
Зарегистрирован: 2017.03.28, 20:03

Re: Yii2 render

Сообщение sosnovskiy »

knowo, поясните что именно вы хотите сделать?

Складывается впечатление что вы хотите показать страницу конкретного product и при этом не светить его id в get. Но зачем? Что будет если вы откроете страницу product c id=3 и дадите ссылку на эту страницу кому либо?

Ответить