[英]Redirect after another redirect CakePHP3
提交表单后,在控制器操作中,我需要在新选项卡中打开pdf,然后重定向到另一个页面。 如果我这样做:
$this->redirect(['action' => 'view', $sale->id, '_ext' => 'pdf']);
return $this->redirect(['action' => 'add']);
我只获得pdf,但没有重定向到“添加”操作。
如何获取pdf,它位于URL ... / view / saleid.pdf中,然后转到添加操作?
编辑
添加控制器操作
return $this->redirect(['action' => 'add', $sale->id]);
再次添加控制器操作,位于顶部
public function add($saleId = null)
{
if(isset($saleId))
$this->redirect(['action' => 'view', $saleId, '_ext' => 'pdf']);
...
}
您只是转到PDF文件,因为您正在重定向到它。 重定向后,执行停止,因此不执行下一个重定向。
这可能无法通过浏览器限制完成:应用程序已将“下载此”标题发送到浏览器,因此您无法将用户重定向到任何位置。 您可以做的是首先重定向到结束页面,然后从那里开始下载。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.