У меня этот код на моей странице просмотра:
<?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?
Любая помощь будет оценена!
Насколько я знаю, на самом деле не должно быть причин когда-либо вызвать runAction явно, так как это не соответствует дизайну MVC.
Объясните, чего вы пытаетесь достичь в целом, и вы найдете лучший ответ. На данный момент я бы сказал, посмотрите на текущий контроллер/действие, которое отображает это представление, и проверит if(isset($journal)&&($keyword=="%")){
и маршрутизирует информацию из существующего действия на ваш взгляд вместо того, чтобы пытаться вызвать новое действие.
В качестве альтернативы выполните перенаправление.
Метод POST предназначен только для form
. Если вы перенаправляетесь на действие, это означает GET. Невозможно перенаправить с помощью POST. $_POST
будет заполняться только при отправке формы.