Symfony1 在调用setTemplate()后显示get变量

Symfony1 在调用setTemplate()后显示get变量,symfony1,Symfony1,我有一个showSuccess页面,需要一些get变量,该页面上有一个表单。当表单提交到executeCreate()并且出现错误时,它调用函数setTemplate('show')并返回到showsucture。但是,缺少get变量 如何保持url不变?您可以从sfWebRequest对象获取get变量-类似于以下内容的操作应该可以: 您可能还需要在模板的表单中使用这些。在show action中使用上述代码的相关部分,将它们设置为视图,就像设置任何其他变量一样,并在form action参数

我有一个showSuccess页面,需要一些get变量,该页面上有一个表单。当表单提交到executeCreate()并且出现错误时,它调用函数setTemplate('show')并返回到showsucture。但是,缺少get变量


如何保持url不变?

您可以从
sfWebRequest
对象获取get变量-类似于以下内容的操作应该可以:

您可能还需要在模板的表单中使用这些。在show action中使用上述代码的相关部分,将它们设置为视图,就像设置任何其他变量一样,并在form action参数中使用它们:

<form method="post" action="<?php echo url_for("module/create?" . $qryString); ?>">
</form>

虽然这正确地保留了我的url,但通过使用重定向方法,它会丢失对无效表单的跟踪,因此输入的值和错误消息会丢失。在这种情况下,请将
if
结构更改为
if($form->isValid()){…}
并在表单成功时重定向。这样,如果验证失败,您的操作仍将显示表单值等。如果您想要一个示例,请告诉我:-)
<form method="post" action="<?php echo url_for("module/create?" . $qryString); ?>">
</form>