src/Controller/NewsController.php line 32

Open in your IDE?
  1. <?php
  2. namespace App\Controller;
  3. use App\Entity\News;
  4. use App\Repository\NewsRepository;
  5. use Knp\Component\Pager\PaginatorInterface;
  6. use Symfony\Component\HttpFoundation\Request;
  7. use Symfony\Component\HttpFoundation\Response;
  8. use Symfony\Component\Routing\Annotation\Route;
  9. use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
  10. #[Route('/news')]
  11. class NewsController extends AbstractController
  12. {
  13.     #[Route('/'name'app_news_index'methods: ['GET'], options: ['sitemap' => true])]
  14.     public function index(NewsRepository $newsRepository,PaginatorInterface $paginatorRequest $request): Response
  15.     {
  16.         $news $paginator->paginate(
  17.             $newsRepository->getFutureNewsQuery(), /* query NOT result */
  18.             $request->query->getInt('page'1), /*page number*/
  19.             /*limit per page*/
  20.         );
  21.         return $this->render('news/index.html.twig', [
  22.             'news' => $news,
  23.         ]);
  24.     }
  25.     #[Route('/{slug}'name'app_news_show'methods: ['GET'])]
  26.     public function show(News $news): Response
  27.     {
  28.         return $this->render('news/show.html.twig', [
  29.             'news' => $news,
  30.         ]);
  31.     }
  32. }