Zend framework2 后重定向的好处
当我开始使用ZF2时,我使用的第一个模块是ZfcUser。当我调试控制器的代码时,我发现了一种奇怪的方法(至少对我来说)来管理操作。我发现像这样的代码Zend framework2 后重定向的好处,zend-framework2,Zend Framework2,当我开始使用ZF2时,我使用的第一个模块是ZfcUser。当我调试控制器的代码时,我发现了一种奇怪的方法(至少对我来说)来管理操作。我发现像这样的代码 $prg = $this->prg('zfcuser/changepassword'); if ($prg instanceof Response) { return $prg; } elseif ($prg === false) { return array(
$prg = $this->prg('zfcuser/changepassword');
if ($prg instanceof Response) {
return $prg;
} elseif ($prg === false) {
return array(
'status' => $status,
'changePasswordForm' => $form,
);
}
//VALIDATE FORM AND DATABASE STUFF
(...)
行为如下:
这篇文章的目的是什么?您建议什么时候使用它(除了已评论的文件上载)?如文档所述: 当用户发送POST请求时(例如,在提交表单后),他们的浏览器将尝试保护他们不再次发送POST,从而破坏“后退”按钮,导致浏览器警告和弹出窗口,有时还会重新发布表单。相反,在接收POST时,我们应该将数据存储在会话容器中,并将用户重定向到GET请求 所以这个插件的目的是改善用户体验。当您提交表单并尝试刷新页面时,您一定遇到了此问题,您会收到一条弹出消息,如(来自google chrome的示例): 确认表单重新提交:您正在查找输入的已用信息的页面。返回到该页面可能会导致重复您采取的任何操作。你想继续吗 您可以在文档中获取更多详细信息,或者如果您的表单处理文件上载 注意:对于文件Post/Redirect/Get插件的示例用法,第16行有一个输入错误,您应该使用
$this->filePrg()
而不是$this->prg()
。它应该与下面的行类似。
$prg = $this->filePrg($myForm, '/user/profile-pic', true);