/
forest-lynx
/
project
Обзор
Документация
Войти
/
forest-lynx
/
project
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/Controller/ParticipationProjectController.php
47 строк
2 KB
forest-lynx
init
04 дек 2024, 10:44
04 дек 2024, 10:44
f4ceba2
Код
Авторство
О чём код?
<?php namespace App\Controller; use App\Entity\ParticipationProject; use App\Form\ParticipationProjectType; use Doctrine\ORM\EntityManagerInterface; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; use Symfony\Component\HttpFoundation\Request; use Symfony\Component\HttpFoundation\Response; use Symfony\Component\Routing\Attribute\Route; #[Route('participation/{id}', name: 'participation.edit', methods: [Request::METHOD_GET, Request::METHOD_POST])] class ParticipationProjectController extends AbstractController { public function __invoke( Request $request, ParticipationProject $participation, EntityManagerInterface $entityManager ): Response { $form = $this->createForm(ParticipationProjectType::class, $participation); $form->handleRequest($request); if ($form->isSubmitted() && $form->isValid()) { $entityManager->flush(); $this->addFlash('success', 'message.updated_successfully'); $related = $request->get('related'); $related = $request->get('related'); if ($related) { $getter = sprintf('get%s', ucfirst($related)); return $this->redirectToRoute($related . '.edit', [ 'id' => $participation->$getter()->getId() ]); } return $this->redirectToRoute('participation.edit', ['id' => $participation->getId()]); } return $this->render('participation/edit.html.twig', [ 'entity' => $participation, 'form' => $form, ]); } }