Morbi tempus commodo mattis. Nunc viverra elit ac laoreet suscipit. Sed varius a risus eget aliquam. Vae humani generis. Eros diam egestas libero eu vulputate risus. Pellentesque et sapien pulvinar consectetur. In hac habitasse platea dictumst.
Pellentesque vitae velit ex. Abnobas sunt hilotaes de placidus vita. Nunc viverra elit ac laoreet suscipit. Mineralis persuadere omnes finises desiderium. Sunt accentores vitare salvus flavum parses. Potus sensim ad ferox abnoba.
Pellentesque vitae velit ex. Lorem ipsum dolor sit amet consectetur adipiscing elit. Sunt accentores vitare salvus flavum parses. Silva de secundus galatae demitto quadra. Mineralis persuadere omnes finises desiderium.
In hac habitasse platea dictumst. Nunc viverra elit ac laoreet suscipit. Silva de secundus galatae demitto quadra. Mauris dapibus risus quis suscipit vulputate. Ubi est barbatus nix. Mineralis persuadere omnes finises desiderium.
Abnobas sunt hilotaes de placidus vita. Ut eleifend mauris et risus ultrices egestas. Diatrias tolerare tanquam noster caesium. Ubi est audax amicitia. Curabitur aliquam euismod dolor non ornare. Sed varius a risus eget aliquam. Ubi est barbatus nix.
Ut eleifend mauris et risus ultrices egestas. Mineralis persuadere omnes finises desiderium. Ubi est barbatus nix. Sunt torquises imitari velox mirabilis medicinaes. Ut suscipit posuere justo at vulputate. Sed varius a risus eget aliquam.
Mauris dapibus risus quis suscipit vulputate. Ut eleifend mauris et risus ultrices egestas. Ubi est barbatus nix. Lorem ipsum dolor sit amet consectetur adipiscing elit. Teres talis saepe tractare de camerarius flavum sensorem. Era brevis ratione est.
Vae humani generis. Silva de secundus galatae demitto quadra. Mauris dapibus risus quis suscipit vulputate. Eros diam egestas libero eu vulputate risus. Urna nisl sollicitudin id varius orci quam id turpis. Sunt accentores vitare salvus flavum parses.
Diatrias tolerare tanquam noster caesium. Sed varius a risus eget aliquam. Aliquam sodales odio id eleifend tristique. Sunt torquises imitari velox mirabilis medicinaes. Curabitur aliquam euismod dolor non ornare.
Dies ist eine Demo-Applikation, die mit dem Symfony-Framework erstellt wurde, um den empfohlenen Weg zur Entwicklung von Symfony-Applikationen zu veranschaulichen.
/**
* 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(),
]);
}