Как получить данные из runAction

0

У меня этот код на моей странице просмотра:

<?php if(isset($journal)&&($keyword=="%")){
                            return Yii::$app->controller->runAction('journalslist',  ['publisherID'=>$journal['publisher_id'], 'partial'=>1]);
                    }

Как я могу получить 'publisherID' и 'partial' в actionJournalList() в контроллере? !!! var_dump($_POST) показывает пустой массив, а Yii::$app->getRequest()->getQueryParams() имеет только данные $_GET? Как я могу runAction на данные POST?

Любая помощь будет оценена!

Теги:
yii

2 ответа

1
Лучший ответ

Насколько я знаю, на самом деле не должно быть причин когда-либо вызвать runAction явно, так как это не соответствует дизайну MVC.

Объясните, чего вы пытаетесь достичь в целом, и вы найдете лучший ответ. На данный момент я бы сказал, посмотрите на текущий контроллер/действие, которое отображает это представление, и проверит if(isset($journal)&&($keyword=="%")){ и маршрутизирует информацию из существующего действия на ваш взгляд вместо того, чтобы пытаться вызвать новое действие.

В качестве альтернативы выполните перенаправление.

  • 0
    Вы правы, Харлан, я изменил свой код. Спасибо за вашу помощь.
1

Метод POST предназначен только для form. Если вы перенаправляетесь на действие, это означает GET. Невозможно перенаправить с помощью POST. $_POST будет заполняться только при отправке формы.

  • 0
    Вы правы, Хамед. Я сделал большую ошибку !!!

Ещё вопросы

Сообщество Overcoder
Наверх
Меню