Можно получить токен формы - sympony 4 - PullRequest
0 голосов
/ 26 декабря 2018

Я работаю с Symfony 4 и хочу создать свою собственную форму, но для вставки мне нужен токен, сгенерированный формой, есть способ сгенерировать форму и получить или что еще яможно сделать.

public function new(Request $request): Response
{
    $customer = new Customers();



    $form = $this->createForm(Customers1Type::class, $customer); // <- here
    $form->handleRequest($request);

    if ($form->isSubmitted() && $form->isValid()) {
        $em = $this->getDoctrine()->getManager();
        $em->persist($customer);
        $em->flush();

        return $this->redirectToRoute('customers_index');
    }

    return $this->render('customers/new.html.twig', [
        'customer' => $customer,
        'form' => $form->createView(),
    ]);
}

Ответы [ 2 ]

0 голосов
/ 28 декабря 2018

При проверке сгенерированной формы вы увидите:

<input type="hidden" id="customer__token" name="customer[_token]" value="the_long_token_auto_generated" /></form>

Затем внутри действий вашего контроллера вы можете получить токен с помощью метода $ request:

$token = $request->request->get('customer')['_token'];
0 голосов
/ 26 декабря 2018

В принципе вам не нужно получать и обрабатывать токен самостоятельно.Обработка форм Symfony внутренне, а функция form_end отображает скрытое поле.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...