У меня проблема при попытке сбросить некоторые значения, но проблема в том, что когда я использую дамп, он не показывает никаких сообщений об ошибках и не сбрасывает никаких значений. Я установил symfony / var-dumper. Исходный код

<?php

namespace App\Controller;

use App\Form\UserType;
use App\Entity\User;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\Routing\Annotation\Route;
use Symfony\Component\Security\Core\Encoder\UserPasswordEncoderInterface;
use Symfony\Component\VarDumper\VarDumper;

class RegistrationController extends Controller
{
    /**
     * @Route("/register", name="user_registration")
     */
    public function registerAction(Request $request, UserPasswordEncoderInterface $passwordEncoder)
    {
        $user = new User();
        $form = $this->createForm(UserType::class, $user);

        $form->handleRequest($request);
        if ($form->isSubmitted() && $form->isValid()) {

            $password = $passwordEncoder->encodePassword($user, $user->getPlainPassword());
            $user->setPassword($password);
            dump($user);

            $entityManager = $this->getDoctrine()->getManager();
            $entityManager->persist($user);
            $entityManager->flush();

            return $this->redirectToRoute('number', array('slug' => 1500, 'dump' => $user));
        } else {

        return $this->render(
            'registration/register.html.twig',
            array('form' => $form->createView())
        );
        }
    }
}
1
Marek 13 Мар 2018 в 09:51

2 ответа

Лучший ответ

Если вы используете остальную часть фреймворка (как кажется, из-за использования контроллера), вы найдете его ссылкой на панели инструментов отладки. Однако, когда вы выполняете перенаправление, страница, на которой вы попадаете, не совпадает с запросом, с которым был сделан дамп.

Если вы войдете в профилировщик отладки и нажмете кнопку «Последние 10» (в верхнем левом углу), вы увидите предыдущие страницы. Очень вероятно, что у второго нижнего будет раздел «дамп», связанный из левого столбца, и вы сможете проверить вывод оттуда.

1
Alister Bulman 13 Мар 2018 в 10:10

Добавьте exit; после dump() или проверьте вкладку отладки в профилировщике.

Его не видно, потому что у вас есть ответ перенаправления.

2
Robert 13 Мар 2018 в 09:27