In hac habitasse platea dictumst. Sunt torquises imitari velox mirabilis medicinaes. Mauris dapibus risus quis suscipit vulputate. Bassus fatalis classiss virtualiter transferre de flavum. Nunc viverra elit ac laoreet suscipit.
Pellentesque vitae velit ex. Teres talis saepe tractare de camerarius flavum sensorem. Vae humani generis. Era brevis ratione est. Abnobas sunt hilotaes de placidus vita. Aliquam sodales odio id eleifend tristique.
Eposs sunt solems de superbus fortis. Ut suscipit posuere justo at vulputate. Ut eleifend mauris et risus ultrices egestas. Ubi est audax amicitia. Ubi est barbatus nix. Silva de secundus galatae demitto quadra. Nunc viverra elit ac laoreet suscipit.
Ut suscipit posuere justo at vulputate. Lorem ipsum dolor sit amet consectetur adipiscing elit. Morbi tempus commodo mattis. Aliquam sodales odio id eleifend tristique. Sed varius a risus eget aliquam. Era brevis ratione est.
Diatrias tolerare tanquam noster caesium. Curabitur aliquam euismod dolor non ornare. Sed varius a risus eget aliquam. Ut eleifend mauris et risus ultrices egestas. Sunt accentores vitare salvus flavum parses. Eros diam egestas libero eu vulputate risus.
Era brevis ratione est. Mineralis persuadere omnes finises desiderium. Sunt accentores vitare salvus flavum parses. Diatrias tolerare tanquam noster caesium. Curabitur aliquam euismod dolor non ornare.
Era brevis ratione est. Ut suscipit posuere justo at vulputate. Nulla porta lobortis ligula vel egestas. Pellentesque et sapien pulvinar consectetur. In hac habitasse platea dictumst. Teres talis saepe tractare de camerarius flavum sensorem.
Abnobas sunt hilotaes de placidus vita. Sunt seculaes transferre talis camerarius fluctuies. Diatrias tolerare tanquam noster caesium. Mineralis persuadere omnes finises desiderium. Eposs sunt solems de superbus fortis. Vae humani generis.
Eposs sunt solems de superbus fortis. Potus sensim ad ferox abnoba. Mauris dapibus risus quis suscipit vulputate. Sunt accentores vitare salvus flavum parses. Aliquam sodales odio id eleifend tristique. Mineralis persuadere omnes finises desiderium.
Pellentesque vitae velit ex. Lorem ipsum dolor sit amet consectetur adipiscing elit. Ut eleifend mauris et risus ultrices egestas. Sed varius a risus eget aliquam. Era brevis ratione est. In hac habitasse platea dictumst.
Ceci est une application de démonstration construite avec le framework Symfony pour illustrer la façon recommandée de développer des applications Symfony.
/**
* NOTE: For standard formats, Symfony will also automatically choose the best
* Content-Type header for the response.
*
* See https://symfony.com/doc/current/routing.html#special-parameters
*/
#[Route('/', name: 'blog_index', defaults: ['page' => '1', '_format' => 'html'], methods: ['GET'])]
#[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')]);
}
$latestPosts = $posts->findLatest($page, $tag);
// Every template name also has two extensions that specify the format and
// engine for that template.
// See https://symfony.com/doc/current/templates.html#template-naming
return $this->render('blog/index.'.$_format.'.twig', [
'paginator' => $latestPosts,
'tagName' => $tag?->getName(),
]);
}