在 redirect() 中传递数据 - Typo3
Pass data in redirect() - Typo3
我在验证后有一个表单,如果发生任何错误,页面将重定向到编辑本身并出现错误 message.How 以通过 typo3 中的 redirect() 传递以前的数据和错误消息?
$this->redirect($action_name,$controllername, $extensionName, array('data',$data));
对吗?
我的操作名称是'edit'
但是它被重定向到'list'
。请帮我解决这个问题。
传递给 redirect-target 的参数必须作为关联数组给出。键是参数名称(如在动作方法中 header,没有 $
),值是参数值。看起来像这样:
$this->redirect(
$action_name,
$controllername,
$extensionName,
[
'data' => $data
]
);
$data
在 URL 中的编码方式取决于它的类型。持久性 objects 被编码为它们的 ID,标量被编码为简单的字符串。它们如何到达另一个动作取决于该动作类型提示和 @param
注释。
要重定向到相同的控制器或扩展,您可以将 $controllerName
和 $extensionName
作为 null
传递。
参数作为具有键值对的数组传递,其中键是参数名称。这假设您的目标操作有一个名为 "data" 的参数。
$this->redirect($action_name,$controllername, $extensionName, array('data' =>$data));
Jost 的回答足以解决您的问题,但如果您想了解更多信息:
- 你的控制器动作应该是 editAction()
- 您应该在 ext_localconf.php
中注册您的 action/controller
- 您必须在插件 Flexform 配置中允许您的操作 [如果有更多操作或 switchableControllerActions]
- 清除安装工具缓存有时会创建 magik ;)
我在验证后有一个表单,如果发生任何错误,页面将重定向到编辑本身并出现错误 message.How 以通过 typo3 中的 redirect() 传递以前的数据和错误消息?
$this->redirect($action_name,$controllername, $extensionName, array('data',$data));
对吗?
我的操作名称是'edit'
但是它被重定向到'list'
。请帮我解决这个问题。
传递给 redirect-target 的参数必须作为关联数组给出。键是参数名称(如在动作方法中 header,没有 $
),值是参数值。看起来像这样:
$this->redirect(
$action_name,
$controllername,
$extensionName,
[
'data' => $data
]
);
$data
在 URL 中的编码方式取决于它的类型。持久性 objects 被编码为它们的 ID,标量被编码为简单的字符串。它们如何到达另一个动作取决于该动作类型提示和 @param
注释。
要重定向到相同的控制器或扩展,您可以将 $controllerName
和 $extensionName
作为 null
传递。
参数作为具有键值对的数组传递,其中键是参数名称。这假设您的目标操作有一个名为 "data" 的参数。
$this->redirect($action_name,$controllername, $extensionName, array('data' =>$data));
Jost 的回答足以解决您的问题,但如果您想了解更多信息:
- 你的控制器动作应该是 editAction()
- 您应该在 ext_localconf.php 中注册您的 action/controller
- 您必须在插件 Flexform 配置中允许您的操作 [如果有更多操作或 switchableControllerActions]
- 清除安装工具缓存有时会创建 magik ;)