【问题标题】:Forward data from one controller action to other in Yii2在 Yii2 中将数据从一个控制器动作转发到另一个控制器动作
【发布时间】:2015-01-31 13:02:17
【问题描述】:

是否可以在渲染之前将数据从一个控制器操作转发到另一个?基本上,如果我们有 Zend _forward 所做的事情,我现在就想要?

这是我的场景。我有一个支付网关,可以将数据返回给我的控制器操作,我想要的是在单独的控制器/操作上处理数据,但呈现主页(没有重定向)。是否可以将控制从一个控制器/动作转发到另一个?

有人可以推荐我吗?

【问题讨论】:

  • 您可以简单地将控制器的相关部分提取到另一种方法并在两者上使用它。这是一个选项吗?
  • @dminones 不,我想要完整的渲染
  • 你试过了吗:$this->actionIndex($data);它应该工作
  • @dminones 我的操作在不同的控制器中
  • 好的,现在更清楚了,你看到这个stackoverflow.com/questions/10323576/…了吗?

标签: php yii2


【解决方案1】:

在 Yii 2 中,你可以使用它产生与 forward() 相同的结果:

Yii::$app->runAction('new_controller/new_action', ['param1'=>'value1', 'param2'=>'value2']);

【讨论】:

  • 如果你想在模式中渲染它,添加$this->layout = false;到你的控制器动作
【解决方案2】:

据我所知,Yii 1 在控制器中有 forward 方法,可以让你简单地转发到不同的控制器/动作:

$this->forward("new_controller/new_action");

我确信类似的东西也可以在 Yii2 中工作。

【讨论】:

  • 他要的是 Yii2 版本
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2017-09-18
  • 2010-09-30
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多