Symfony Exception

InvalidParameterException RuntimeError

HTTP 500 Internal Server Error

An exception has been thrown during the rendering of a template ("Parameter "slug" for route "hostales_show" must match "[^/]++" ("" given) to generate a corresponding URL.").

Exceptions 2

Twig\Error\ RuntimeError

  1.                                                             </div>
  2.                                                         </section>
  3.                                                     </div>
  4.                                                     {% for hostal in poblacion.hostales    %}
  5.                                                         <div class="col-lg-6">
  6.                                                             <h5 class="text-uppercase mt-4"><a href="{{ path('hostales_show', {'slug': hostal.slug}) }}"> {{ hostal.nombre }}</a></h5>
  7.                                                             <span class="thumb-info thumb-info-side-image thumb-info-no-zoom">
  8.                                                                         <span class="thumb-info-side-image-wrapper">
  9.                                                                          {% if  imagenes[hostal.slug] is not defined or  imagenes[hostal.slug]  == ""  %}
  10.                                                                              <img style="width: 200px;"  class="img-fluid rounded-circle mb-4" src="{{ asset('imagenes/miscelanea/camino-sign.jpg') }}"  title="sin fotos" alt="sin foto del hostal">
  11.                                                                          {% else %}
  1. </head>
  2. <body>
  3. ";
  4.         // line 67
  5.         $this->displayBlock('body'$context$blocks);
  6.         // line 68
  7.         echo "
  8. <!-- Vendor -->
  9. <script src=\"";
in vendor/twig/twig/src/Template.php -> doDisplay (line 394)
  1.     }
  2.     protected function displayWithErrorHandling(array $context, array $blocks = [])
  3.     {
  4.         try {
  5.             $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
in vendor/twig/twig/src/Template.php -> displayWithErrorHandling (line 367)
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = [])
  4.     {
  5.         $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks$blocks));
  6.     }
  7.     public function render(array $context)
  8.     {
  9.         $level ob_get_level();
  1.         $macros $this->macros;
  2.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  3.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""etapas/show.html.twig"));
  4.         $this->parent $this->loadTemplate("base.html.twig""etapas/show.html.twig"1);
  5.         $this->parent->display($contextarray_merge($this->blocks$blocks));
  6.         
  7.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  8.     }
in vendor/twig/twig/src/Template.php -> doDisplay (line 394)
  1.     }
  2.     protected function displayWithErrorHandling(array $context, array $blocks = [])
  3.     {
  4.         try {
  5.             $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
in vendor/twig/twig/src/Template.php -> displayWithErrorHandling (line 367)
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = [])
  4.     {
  5.         $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks$blocks));
  6.     }
  7.     public function render(array $context)
  8.     {
  9.         $level ob_get_level();
in vendor/twig/twig/src/Template.php -> display (line 379)
  1.             ob_start();
  2.         } else {
  3.             ob_start(function () { return ''; });
  4.         }
  5.         try {
  6.             $this->display($context);
  7.         } catch (\Throwable $e) {
  8.             while (ob_get_level() > $level) {
  9.                 ob_end_clean();
  10.             }
  1.     public function render(array $context = []): string
  2.     {
  3.         // using func_get_args() allows to not expose the blocks argument
  4.         // as it should only be used by internal code
  5.         return $this->template->render($context\func_get_args()[1] ?? []);
  6.     }
  7.     public function display(array $context = [])
  8.     {
  9.         // using func_get_args() allows to not expose the blocks argument
  1.      * @throws SyntaxError  When an error occurred during compilation
  2.      * @throws RuntimeError When an error occurred during rendering
  3.      */
  4.     public function render($name, array $context = []): string
  5.     {
  6.         return $this->load($name)->render($context);
  7.     }
  8.     /**
  9.      * Displays a template.
  10.      *
  1.             if ($v instanceof FormInterface) {
  2.                 $parameters[$k] = $v->createView();
  3.             }
  4.         }
  5.         return $this->container->get('twig')->render($view$parameters);
  6.     }
  7.     /**
  8.      * Renders a view.
  9.      *
  1.      * If an invalid form is found in the list of parameters, a 422 status code is returned.
  2.      * Forms found in parameters are auto-cast to form views.
  3.      */
  4.     protected function render(string $view, array $parameters = [], Response $response null): Response
  5.     {
  6.         $content $this->renderView($view$parameters);
  7.         $response ??= new Response();
  8.         if (200 === $response->getStatusCode()) {
  9.             foreach ($parameters as $v) {
  10.                 if ($v instanceof FormInterface && $v->isSubmitted() && !$v->isValid()) {
AbstractController->render() in src/Controller/EtapasController.php (line 75)
  1.             //Obtenemos los Hitos de la variante 1
  2.             $variante1 $repositorio->GetHitosEtapa($etapa->getId(), 1);
  3.             return $this->render('etapas/show.html.twig', [
  4.                 'etapa' => $etapa,
  5.                 'hitos1' => $variante1,
  6.                 'poblaciones' => $poblaciones,
  7.                 'imagenes' => $imagenes
  1.         $this->dispatcher->dispatch($eventKernelEvents::CONTROLLER_ARGUMENTS);
  2.         $controller $event->getController();
  3.         $arguments $event->getArguments();
  4.         // call controller
  5.         $response $controller(...$arguments);
  6.         // view
  7.         if (!$response instanceof Response) {
  8.             $event = new ViewEvent($this$request$type$response$event);
  9.             $this->dispatcher->dispatch($eventKernelEvents::VIEW);
  1.     {
  2.         $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  3.         $this->requestStack->push($request);
  4.         try {
  5.             return $this->handleRaw($request$type);
  6.         } catch (\Throwable $e) {
  7.             if ($e instanceof \Error && !$this->handleAllThrowables) {
  8.                 throw $e;
  9.             }
  1.         $this->boot();
  2.         ++$this->requestStackSize;
  3.         $this->resetServices true;
  4.         try {
  5.             return $this->getHttpKernel()->handle($request$type$catch);
  6.         } finally {
  7.             --$this->requestStackSize;
  8.         }
  9.     }
Kernel->handle() in public/index.php (line 25)
  1.     Request::setTrustedHosts([$trustedHosts]);
  2. }
  3. $kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
  4. $request Request::createFromGlobals();
  5. $response $kernel->handle($request);
  6. $response->send();
  7. $kernel->terminate($request$response);

Symfony\Component\Routing\Exception\ InvalidParameterException

Parameter "slug" for route "hostales_show" must match "[^/]++" ("" given) to generate a corresponding URL.

  1.                 if (!$optional || $important || !\array_key_exists($varName$defaults) || (null !== $mergedParams[$varName] && (string) $mergedParams[$varName] !== (string) $defaults[$varName])) {
  2.                     // check requirement (while ignoring look-around patterns)
  3.                     if (null !== $this->strictRequirements && !preg_match('#^'.preg_replace('/\(\?(?:=|<=|!|<!)((?:[^()\\\\]+|\\\\.|\((?1)\))*)\)/'''$token[2]).'$#i'.(empty($token[4]) ? '' 'u'), $mergedParams[$token[3]] ?? '')) {
  4.                         if ($this->strictRequirements) {
  5.                             throw new InvalidParameterException(strtr($message, ['{parameter}' => $varName'{route}' => $name'{expected}' => $token[2], '{given}' => $mergedParams[$varName]]));
  6.                         }
  7.                         $this->logger?->error($message, ['parameter' => $varName'route' => $name'expected' => $token[2], 'given' => $mergedParams[$varName]]);
  8.                         return '';
  1.             } elseif (!isset($parameters['_locale'])) {
  2.                 $parameters['_locale'] = $defaults['_locale'];
  3.             }
  4.         }
  5.         return $this->doGenerate($variables$defaults$requirements$tokens$parameters$name$referenceType$hostTokens$requiredSchemes);
  6.     }
  7. }
in vendor/symfony/routing/Router.php -> generate (line 209)
  1.         $this->configCacheFactory $configCacheFactory;
  2.     }
  3.     public function generate(string $name, array $parameters = [], int $referenceType self::ABSOLUTE_PATH): string
  4.     {
  5.         return $this->getGenerator()->generate($name$parameters$referenceType);
  6.     }
  7.     public function match(string $pathinfo): array
  8.     {
  9.         return $this->getMatcher()->match($pathinfo);
  1.         ];
  2.     }
  3.     public function getPath(string $name, array $parameters = [], bool $relative false): string
  4.     {
  5.         return $this->generator->generate($name$parameters$relative UrlGeneratorInterface::RELATIVE_PATH UrlGeneratorInterface::ABSOLUTE_PATH);
  6.     }
  7.     public function getUrl(string $name, array $parameters = [], bool $schemeRelative false): string
  8.     {
  9.         return $this->generator->generate($name$parameters$schemeRelative UrlGeneratorInterface::NETWORK_PATH UrlGeneratorInterface::ABSOLUTE_URL);
  1.                 foreach ($context['_seq'] as $context["_key"] => $context["hostal"]) {
  2.                     // line 433
  3.                     echo "                                                        <div class=\"col-lg-6\">
  4.                                                             <h5 class=\"text-uppercase mt-4\"><a href=\"";
  5.                     // line 434
  6.                     echo twig_escape_filter($this->env$this->extensions['Symfony\Bridge\Twig\Extension\RoutingExtension']->getPath("hostales_show", ["slug" => twig_get_attribute($this->env$this->source$context["hostal"], "slug", [], "any"falsefalsefalse434)]), "html"nulltrue);
  7.                     echo "\"> ";
  8.                     echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source$context["hostal"], "nombre", [], "any"falsefalsefalse434), "html"nulltrue);
  9.                     echo "</a></h5>
  10.                                                             <span class=\"thumb-info thumb-info-side-image thumb-info-no-zoom\">
  11.                                                                         <span class=\"thumb-info-side-image-wrapper\">
in vendor/twig/twig/src/Template.php -> block_body (line 171)
  1.             throw new \LogicException('A block must be a method on a \Twig\Template instance.');
  2.         }
  3.         if (null !== $template) {
  4.             try {
  5.                 $template->$block($context$blocks);
  6.             } catch (Error $e) {
  7.                 if (!$e->getSourceContext()) {
  8.                     $e->setSourceContext($template->getSourceContext());
  9.                 }
  1. </head>
  2. <body>
  3. ";
  4.         // line 67
  5.         $this->displayBlock('body'$context$blocks);
  6.         // line 68
  7.         echo "
  8. <!-- Vendor -->
  9. <script src=\"";
in vendor/twig/twig/src/Template.php -> doDisplay (line 394)
  1.     }
  2.     protected function displayWithErrorHandling(array $context, array $blocks = [])
  3.     {
  4.         try {
  5.             $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
in vendor/twig/twig/src/Template.php -> displayWithErrorHandling (line 367)
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = [])
  4.     {
  5.         $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks$blocks));
  6.     }
  7.     public function render(array $context)
  8.     {
  9.         $level ob_get_level();
  1.         $macros $this->macros;
  2.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  3.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""etapas/show.html.twig"));
  4.         $this->parent $this->loadTemplate("base.html.twig""etapas/show.html.twig"1);
  5.         $this->parent->display($contextarray_merge($this->blocks$blocks));
  6.         
  7.         $__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
  8.     }
in vendor/twig/twig/src/Template.php -> doDisplay (line 394)
  1.     }
  2.     protected function displayWithErrorHandling(array $context, array $blocks = [])
  3.     {
  4.         try {
  5.             $this->doDisplay($context$blocks);
  6.         } catch (Error $e) {
  7.             if (!$e->getSourceContext()) {
  8.                 $e->setSourceContext($this->getSourceContext());
  9.             }
in vendor/twig/twig/src/Template.php -> displayWithErrorHandling (line 367)
  1.         return $this->blocks;
  2.     }
  3.     public function display(array $context, array $blocks = [])
  4.     {
  5.         $this->displayWithErrorHandling($this->env->mergeGlobals($context), array_merge($this->blocks$blocks));
  6.     }
  7.     public function render(array $context)
  8.     {
  9.         $level ob_get_level();
in vendor/twig/twig/src/Template.php -> display (line 379)
  1.             ob_start();
  2.         } else {
  3.             ob_start(function () { return ''; });
  4.         }
  5.         try {
  6.             $this->display($context);
  7.         } catch (\Throwable $e) {
  8.             while (ob_get_level() > $level) {
  9.                 ob_end_clean();
  10.             }
  1.     public function render(array $context = []): string
  2.     {
  3.         // using func_get_args() allows to not expose the blocks argument
  4.         // as it should only be used by internal code
  5.         return $this->template->render($context\func_get_args()[1] ?? []);
  6.     }
  7.     public function display(array $context = [])
  8.     {
  9.         // using func_get_args() allows to not expose the blocks argument
  1.      * @throws SyntaxError  When an error occurred during compilation
  2.      * @throws RuntimeError When an error occurred during rendering
  3.      */
  4.     public function render($name, array $context = []): string
  5.     {
  6.         return $this->load($name)->render($context);
  7.     }
  8.     /**
  9.      * Displays a template.
  10.      *
  1.             if ($v instanceof FormInterface) {
  2.                 $parameters[$k] = $v->createView();
  3.             }
  4.         }
  5.         return $this->container->get('twig')->render($view$parameters);
  6.     }
  7.     /**
  8.      * Renders a view.
  9.      *
  1.      * If an invalid form is found in the list of parameters, a 422 status code is returned.
  2.      * Forms found in parameters are auto-cast to form views.
  3.      */
  4.     protected function render(string $view, array $parameters = [], Response $response null): Response
  5.     {
  6.         $content $this->renderView($view$parameters);
  7.         $response ??= new Response();
  8.         if (200 === $response->getStatusCode()) {
  9.             foreach ($parameters as $v) {
  10.                 if ($v instanceof FormInterface && $v->isSubmitted() && !$v->isValid()) {
AbstractController->render() in src/Controller/EtapasController.php (line 75)
  1.             //Obtenemos los Hitos de la variante 1
  2.             $variante1 $repositorio->GetHitosEtapa($etapa->getId(), 1);
  3.             return $this->render('etapas/show.html.twig', [
  4.                 'etapa' => $etapa,
  5.                 'hitos1' => $variante1,
  6.                 'poblaciones' => $poblaciones,
  7.                 'imagenes' => $imagenes
  1.         $this->dispatcher->dispatch($eventKernelEvents::CONTROLLER_ARGUMENTS);
  2.         $controller $event->getController();
  3.         $arguments $event->getArguments();
  4.         // call controller
  5.         $response $controller(...$arguments);
  6.         // view
  7.         if (!$response instanceof Response) {
  8.             $event = new ViewEvent($this$request$type$response$event);
  9.             $this->dispatcher->dispatch($eventKernelEvents::VIEW);
  1.     {
  2.         $request->headers->set('X-Php-Ob-Level', (string) ob_get_level());
  3.         $this->requestStack->push($request);
  4.         try {
  5.             return $this->handleRaw($request$type);
  6.         } catch (\Throwable $e) {
  7.             if ($e instanceof \Error && !$this->handleAllThrowables) {
  8.                 throw $e;
  9.             }
  1.         $this->boot();
  2.         ++$this->requestStackSize;
  3.         $this->resetServices true;
  4.         try {
  5.             return $this->getHttpKernel()->handle($request$type$catch);
  6.         } finally {
  7.             --$this->requestStackSize;
  8.         }
  9.     }
Kernel->handle() in public/index.php (line 25)
  1.     Request::setTrustedHosts([$trustedHosts]);
  2. }
  3. $kernel = new Kernel($_SERVER['APP_ENV'], (bool) $_SERVER['APP_DEBUG']);
  4. $request Request::createFromGlobals();
  5. $response $kernel->handle($request);
  6. $response->send();
  7. $kernel->terminate($request$response);

Logs

No log messages

Stack Traces 2

[2/2] RuntimeError
Twig\Error\RuntimeError:
An exception has been thrown during the rendering of a template ("Parameter "slug" for route "hostales_show" must match "[^/]++" ("" given) to generate a corresponding URL.").

  at templates/etapas/show.html.twig:434
  at Twig\Template->displayBlock()
     (var/cache/dev/twig/14/146691ef3ace31af3131f1efcb5c2b67.php:176)
  at __TwigTemplate_e6f8b7bda70f5cbc4e71af684a9727a6->doDisplay()
     (vendor/twig/twig/src/Template.php:394)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:367)
  at Twig\Template->display()
     (var/cache/dev/twig/e7/e75fe2efc87727747913aac635bee637.php:46)
  at __TwigTemplate_1e2cb04bd5dea427b816518ae7d08e8b->doDisplay()
     (vendor/twig/twig/src/Template.php:394)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:367)
  at Twig\Template->display()
     (vendor/twig/twig/src/Template.php:379)
  at Twig\Template->render()
     (vendor/twig/twig/src/TemplateWrapper.php:40)
  at Twig\TemplateWrapper->render()
     (vendor/twig/twig/src/Environment.php:280)
  at Twig\Environment->render()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:242)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->renderView()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:253)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render()
     (src/Controller/EtapasController.php:75)
  at App\Controller\EtapasController->show()
     (vendor/symfony/http-kernel/HttpKernel.php:163)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw()
     (vendor/symfony/http-kernel/HttpKernel.php:74)
  at Symfony\Component\HttpKernel\HttpKernel->handle()
     (vendor/symfony/http-kernel/Kernel.php:184)
  at Symfony\Component\HttpKernel\Kernel->handle()
     (public/index.php:25)                
[1/2] InvalidParameterException
Symfony\Component\Routing\Exception\InvalidParameterException:
Parameter "slug" for route "hostales_show" must match "[^/]++" ("" given) to generate a corresponding URL.

  at vendor/symfony/routing/Generator/UrlGenerator.php:176
  at Symfony\Component\Routing\Generator\UrlGenerator->doGenerate()
     (vendor/symfony/routing/Generator/CompiledUrlGenerator.php:67)
  at Symfony\Component\Routing\Generator\CompiledUrlGenerator->generate()
     (vendor/symfony/routing/Router.php:209)
  at Symfony\Component\Routing\Router->generate()
     (vendor/symfony/twig-bridge/Extension/RoutingExtension.php:45)
  at Symfony\Bridge\Twig\Extension\RoutingExtension->getPath()
     (var/cache/dev/twig/e7/e75fe2efc87727747913aac635bee637.php:1129)
  at __TwigTemplate_1e2cb04bd5dea427b816518ae7d08e8b->block_body()
     (vendor/twig/twig/src/Template.php:171)
  at Twig\Template->displayBlock()
     (var/cache/dev/twig/14/146691ef3ace31af3131f1efcb5c2b67.php:176)
  at __TwigTemplate_e6f8b7bda70f5cbc4e71af684a9727a6->doDisplay()
     (vendor/twig/twig/src/Template.php:394)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:367)
  at Twig\Template->display()
     (var/cache/dev/twig/e7/e75fe2efc87727747913aac635bee637.php:46)
  at __TwigTemplate_1e2cb04bd5dea427b816518ae7d08e8b->doDisplay()
     (vendor/twig/twig/src/Template.php:394)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:367)
  at Twig\Template->display()
     (vendor/twig/twig/src/Template.php:379)
  at Twig\Template->render()
     (vendor/twig/twig/src/TemplateWrapper.php:40)
  at Twig\TemplateWrapper->render()
     (vendor/twig/twig/src/Environment.php:280)
  at Twig\Environment->render()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:242)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->renderView()
     (vendor/symfony/framework-bundle/Controller/AbstractController.php:253)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render()
     (src/Controller/EtapasController.php:75)
  at App\Controller\EtapasController->show()
     (vendor/symfony/http-kernel/HttpKernel.php:163)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw()
     (vendor/symfony/http-kernel/HttpKernel.php:74)
  at Symfony\Component\HttpKernel\HttpKernel->handle()
     (vendor/symfony/http-kernel/Kernel.php:184)
  at Symfony\Component\HttpKernel\Kernel->handle()
     (public/index.php:25)