From 4754bea45351ff26cddaa365ef4f8385904ea5dd Mon Sep 17 00:00:00 2001 From: seb-jean Date: Fri, 30 May 2025 10:52:02 +0200 Subject: [PATCH] Use MapEntity for get Tag entity --- src/Controller/BlogController.php | 17 ++++++++--------- 1 file changed, 8 insertions(+), 9 deletions(-) diff --git a/src/Controller/BlogController.php b/src/Controller/BlogController.php index 6263a5f8a..c46fd8460 100644 --- a/src/Controller/BlogController.php +++ b/src/Controller/BlogController.php @@ -13,11 +13,11 @@ use App\Entity\Comment; use App\Entity\Post; +use App\Entity\Tag; use App\Entity\User; use App\Event\CommentCreatedEvent; use App\Form\CommentType; use App\Repository\PostRepository; -use App\Repository\TagRepository; use Doctrine\ORM\EntityManagerInterface; use Symfony\Bridge\Doctrine\Attribute\MapEntity; use Symfony\Bundle\FrameworkBundle\Controller\AbstractController; @@ -49,14 +49,13 @@ final class BlogController extends AbstractController #[Route('/rss.xml', name: 'blog_rss', defaults: ['page' => '1', '_format' => 'xml'], methods: ['GET'])] #[Route('/page/{page}', name: 'blog_index_paginated', defaults: ['_format' => 'html'], requirements: ['page' => Requirement::POSITIVE_INT], methods: ['GET'])] #[Cache(smaxage: 10)] - public function index(Request $request, int $page, string $_format, PostRepository $posts, TagRepository $tags): Response - { - $tag = null; - - if ($request->query->has('tag')) { - $tag = $tags->findOneBy(['name' => $request->query->get('tag')]); - } - + public function index( + int $page, + string $_format, + PostRepository $posts, + #[MapEntity(expr: 'request.query.has("tag") ? repository.findOneBy({"name": request.query.get("tag")}) : null')] + ?Tag $tag, + ): Response { $latestPosts = $posts->findLatest($page, $tag); // Every template name also has two extensions that specify the format and