Symfony 提交到相同的 url

发布于 2024-12-20 11:59:38 字数 104 浏览 2 评论 0原文

我有一个带有一些文本字段的表单,并且有一个预览按钮,需要将表单提交到同一控制器。然后在控制器中,我需要提取值并使用这些值填充表单以供模板查看。实现这一目标的最佳方法是什么?我是新手所以请说清楚。

I have a form with some text fields and I have a preview button that needs to submit the form to the same controller. And then in the controller, I need to extract the values and populate a form with these values for the template to see. What is the best way to achieve this? I'm a newbe so please be clear.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

舞袖。长 2024-12-27 11:59:38

示例控制器:

public function myControllerName(sfWebRequest $request)
{
  $this->form = new myFormClass();
}

使用 renderFormTag( url_for('@yourRoutingName'), array('method' => 'POST') );在模板中添加 ?> 并将 @yourRoutingName 更改为指向您的控制器的名称。

现在将控制器更改为如下所示:

public function myControllerName(sfWebRequest $request)
{
  $this->form = new myFormClass();

  if ($request->isMethod(sfRequest::POST)
  {
    $this->form->bind( $request->getParameter( $this->form->getName() ) );

    // Check if the form is valid.
    if ($this->form->isValid())
    {
      $this->form->save();
      // More logic here.
    }
  }
}

$this->form->bind( $request->getParameter( $this->form->getName() ) ); 部分将发布的数据绑定到您的表单,其中 $this->form->isValid() 返回一个布尔值,无论表单是否有效。

Sample controller:

public function myControllerName(sfWebRequest $request)
{
  $this->form = new myFormClass();
}

Use <?php echo $form->renderFormTag( url_for('@yourRoutingName'), array('method' => 'POST') ); ?> in your template and change @yourRoutingName to the one pointing to your controller.

Now change your controller to be something like this:

public function myControllerName(sfWebRequest $request)
{
  $this->form = new myFormClass();

  if ($request->isMethod(sfRequest::POST)
  {
    $this->form->bind( $request->getParameter( $this->form->getName() ) );

    // Check if the form is valid.
    if ($this->form->isValid())
    {
      $this->form->save();
      // More logic here.
    }
  }
}

The $this->form->bind( $request->getParameter( $this->form->getName() ) ); part binds posted data to your form where $this->form->isValid() returns a boolean whether the form is valid or not.

小草泠泠 2024-12-27 11:59:38

你试过这个吗?

$this->redirect($request->getReferer()); //action

如果没有,请尝试检查它是否适合您。

谢谢。

Have you tried this ?

$this->redirect($request->getReferer()); //action

if not, then please try and check if its work for you.

Thanks.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文