从嵌入式控制器重定向 [英] Redirect from embedded controller

查看:86
本文介绍了从嵌入式控制器重定向的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我使用嵌入式控制器来呈现用于多页:

I use embedded controller to render form that's used on multiple pages:

嫩枝

{% render 'Bundle:Controller:someForm' %}

控制器

public function someFormAction()
{
    // Some logic

    ...

    if ($form->isValid()) {

        ...

        $this->get('session')->setFlash('successful', "Woey!");

        return $this->redirect($this->generateUrl('homepage'));
    }

    return $this->render('Bundle:Template:form.html.twig', array('form' => $form->createView()));
}

在成功将表单作为 post的一部分提交后,我需要重定向回首页-redirect-get 设计模式.如果我如上所述使用它,我将得到异常,因为嵌入式控制器的响应是302而不是200(至少我希望它像这样工作).

I need to redirect back to homepage after the form was successfully submitted as a part of post-redirect-get design pattern. If I use it as I described above, I'll get exception as response from embedded controller was 302 instead of 200 (at least I expect it works like this).

在这种情况下是否可以正常重定向?还是我从完全错误的角度来处理这种情况(使用在多页上呈现的表单)?

Is it possible to redirect normally in such scenario? Or am I approaching the situation (with form that's rendered on multiple pages) from totally wrong angle?

推荐答案

只是正式的答案, Fabien认为Symfony2永远不会支持此功能.

这篇关于从嵌入式控制器重定向的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆