获取 POST 请求 Symfony 3



试图用Symfony从我的POST表单中获取响应,但"name"变量总是返回null?被困在这个上面几个小时,将不胜感激。

我正在使用文档中所述的$request->request->get('...', 'default')。

{
    $project = new Project();
    $form = $this->createFormBuilder($project)
        ->add('name', TextType::class)
        ->add('save', SubmitType::class, array('label' => 'Load Project'))
        ->getForm();
    $form->handleRequest($request);
    if ($form->isSubmitted() && $form->isValid()) {
        return $this->render('default/show.html.twig', array(
            'name' => $request->request->get('name', 'null'),
        ));
    }
    return $this->render('default/new.html.twig', array(
        'form' => $form->createView(),
    ));
}

您可以从项目对象中获取 name 的值:

$project = new Project();
$form = $this->createFormBuilder($project)
    ->add('name', TextType::class)
    ->add('save', SubmitType::class, array('label' => 'Load Project'))
    ->getForm();
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
    return $this->render('default/show.html.twig', array(
        'name' => $project->getName(),
    ));
}
return $this->render('default/new.html.twig', array(
    'form' => $form->createView(),
));

或从表格:

$project = new Project();
$form = $this->createFormBuilder($project)
    ->add('name', TextType::class)
    ->add('save', SubmitType::class, array('label' => 'Load Project'))
    ->getForm();
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
    return $this->render('default/show.html.twig', array(
        'name' => $form->get('name'),
    ));
}
return $this->render('default/new.html.twig', array(
    'form' => $form->createView(),
));

最新更新