Я пытаюсь обновить строку в моей базе данных.
В этом случае я использую две сущности Пользователь и Токен
Это мой метод в моем контроллере:
/**
* @Route("/forget-password/", name="forget", methods="GET|POST")
*/
public function emailrestore(Request $request, UserRepository $userrepository, TokenGenerator $tokengenerator, MailGenerator $mailgenerator)
{
$userInfo = ['email' => null];
$form = $this->createForm(ForgetPasswordType::class, $userInfo);
$form->handleRequest($request);
if ($form->isSubmitted() && $form->isValid()) {
$userInfo = $form->getData();
$email = $userInfo['email'];
$user = $userrepository->findOneBy(['email' => $email]);
if ($user === null){
$message = "This email doesn't exist in our database or is wrong.";
$this->session->getFlashBag()->add("danger", $message);
return $this->redirectToRoute('forget');
}
// 2.5) Generating token
$pledge = $tokengenerator->generateToken();
$url = $this->generateUrl('recovery/',
array(
'token' => $pledge
),
UrlGeneratorInterface::ABSOLUTE_URL
);
$user->setToken($pledge);
$entityManager = $this->getDoctrine()->getManager();
$entityManager->persist($token);
$entityManager->flush();
// 6) Sending the email to the user
//$mailgenerator->registration($email, $url);
}
return $this->render('emails/forget-password/forget-password.html.twig', array (
'form' => $form->createView(),
));
}
Как вы можете видеть в части дампа ($ user);По моему запросу у меня есть следующие данные:
Как я понимаю в этой же части, около дампа ($ user).Я хочу обновить новый токен от моего пользователя с помощью метода $ token-> setToken ($ pledge)
Какой метод является правильным для управления этим?
Спасибо за ваше время.