如何将当前语言添加到extbase重定向?

时间:2013-08-05 16:53:57

标签: typo3 extbase

在我的extbase控制器操作中,我想在上传文件后重定向到另一个控制器/操作,所以我打电话

$this->redirect('index', 'Download', null, null, $this->settings['listView']);

问题是,重定向过程中当前语言参数丢失了。方法签名允许第四个位置上的$arguments数组,但如果我放入L那里

$this->redirect('index', 'Download', null, array('L' => $GLOBALS['TSFE']->sys_language_uid), $this->settings['listView']);

重定向使用扩展参数之类的东西包装它,比如

&tx_myext_controller[L]=0

所以我的问题是:如何将当前语言添加到extbase重定向?

1 个答案:

答案 0 :(得分:6)

我想在转义 $this->redirect方法的名称空间时经常使用的快速提示。我正在使用$this->redirectToUri($uri),其中$uri准备了uriBuilder(这可能比普通重定向更灵活)。

$this->uriBuilder->reset()->setArguments(array('L' => $GLOBALS['TSFE']->sys_language_uid))->setTargetPageUid($this->settings['listView']);
$uri = $this->uriBuilder->uriFor('index', array(), 'Download');
$this->redirectToUri($uri);