Mineralis persuadere omnes finises desiderium. Potus sensim ad ferox abnoba. Morbi tempus commodo mattis. Ut eleifend mauris et risus ultrices egestas. Mauris dapibus risus quis suscipit vulputate. In hac habitasse platea dictumst. Era brevis ratione est.
Nunc viverra elit ac laoreet suscipit. Sunt accentores vitare salvus flavum parses. Mineralis persuadere omnes finises desiderium. Morbi tempus commodo mattis. Potus sensim ad ferox abnoba. In hac habitasse platea dictumst.
Ut suscipit posuere justo at vulputate. Pellentesque vitae velit ex. Silva de secundus galatae demitto quadra. Potus sensim ad ferox abnoba. Teres talis saepe tractare de camerarius flavum sensorem. Mauris dapibus risus quis suscipit vulputate.
Lorem ipsum dolor sit amet consectetur adipiscing elit. Sunt torquises imitari velox mirabilis medicinaes. Sunt accentores vitare salvus flavum parses. Sed varius a risus eget aliquam. Silva de secundus galatae demitto quadra.
Sunt torquises imitari velox mirabilis medicinaes. Aliquam sodales odio id eleifend tristique. Morbi tempus commodo mattis. Mineralis persuadere omnes finises desiderium. Sunt accentores vitare salvus flavum parses. Eposs sunt solems de superbus fortis.
Lorem ipsum dolor sit amet consectetur adipiscing elit. Ut suscipit posuere justo at vulputate. Ubi est audax amicitia. Silva de secundus galatae demitto quadra. Nulla porta lobortis ligula vel egestas. Sunt seculaes transferre talis camerarius fluctuies.
Ut eleifend mauris et risus ultrices egestas. Sunt torquises imitari velox mirabilis medicinaes. Potus sensim ad ferox abnoba. Urna nisl sollicitudin id varius orci quam id turpis. Pellentesque et sapien pulvinar consectetur.
Urna nisl sollicitudin id varius orci quam id turpis. Morbi tempus commodo mattis. Abnobas sunt hilotaes de placidus vita. In hac habitasse platea dictumst. Ubi est audax amicitia. Sunt seculaes transferre talis camerarius fluctuies.
Nulla porta lobortis ligula vel egestas. Aliquam sodales odio id eleifend tristique. Lorem ipsum dolor sit amet consectetur adipiscing elit. Morbi tempus commodo mattis. Mineralis persuadere omnes finises desiderium.
Diatrias tolerare tanquam noster caesium. Nulla porta lobortis ligula vel egestas. Pellentesque vitae velit ex. Sunt torquises imitari velox mirabilis medicinaes. Mauris dapibus risus quis suscipit vulputate. Eros diam egestas libero eu vulputate risus.
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(),
]);
}