Symfony Exception

RuntimeError

HTTP 500 Internal Server Error

Impossible to access an attribute ("title") on a null variable.

Exception

Twig\Error\ RuntimeError

  1.             {% include 'front/breadcrumb.html.twig' with {'title':  'booking'|trans({}, 'booking_page') } %}
  2.         <div class="mt-5 articleTitle">
  3.             <h2>{{ news.title }}</h2>
  4.             <span>{{ news.created|date('d / m / Y') }}</span>
  5.         </div>  
  6.         <div class="p-4 articleDetails">
  7.             {% if news.image %}
  1.         echo "
  2.         <div class=\"mt-5 articleTitle\">
  3.             <h2>";
  4.         // line 16
  5.         echo twig_escape_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["news"]) || array_key_exists("news"$context) ? $context["news"] : (function () { throw new RuntimeError('Variable "news" does not exist.'16$this->source); })()), "title", [], "any"falsefalsefalse16), "html"nulltrue);
  6.         echo "</h2>
  7.             <span>";
  8.         // line 17
  9.         echo twig_escape_filter($this->envtwig_date_format_filter($this->envtwig_get_attribute($this->env$this->source, (isset($context["news"]) || array_key_exists("news"$context) ? $context["news"] : (function () { throw new RuntimeError('Variable "news" does not exist.'17$this->source); })()), "created", [], "any"falsefalsefalse17), "d / m / Y"), "html"nulltrue);
  10.         echo "</span>
in vendor/twig/twig/src/Template.php -> block_body (line 182)
  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. ";
  2.         // line 60
  3.         $this->displayBlock('body'$context$blocks);
  4.         // line 61
  5.         echo "
in vendor/twig/twig/src/Template.php -> doDisplay (line 405)
  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 378)
  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_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02 $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];
  3.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->enter($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template""front/newsdetails.html.twig"));
  4.         $this->parent $this->loadTemplate("front/base.html.twig""front/newsdetails.html.twig"3);
  5.         $this->parent->display($contextarray_merge($this->blocks$blocks));
  6.         
  7.         $__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02->leave($__internal_319393461309892924ff6e74d6d6e64287df64b63545b994e100d4ab223aed02_prof);
  8.     }
in vendor/twig/twig/src/Template.php -> doDisplay (line 405)
  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 378)
  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 390)
  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.      *
  2.      * @throws Error if something went wrong like a thrown exception while rendering the template
  3.      */
  4.     public function render($name, array $parameters = [])
  5.     {
  6.         return $this->load($name)->render($parameters);
  7.     }
  8.     /**
  9.      * {@inheritdoc}
  10.      *
  1.     protected function render(string $view, array $parameters = [], Response $response null): Response
  2.     {
  3.         if ($this->container->has('templating') && $this->container->get('templating')->supports($view)) {
  4.             @trigger_error('Using the "templating" service is deprecated since version 4.3 and will be removed in 5.0; use Twig instead.', \E_USER_DEPRECATED);
  5.             $content $this->container->get('templating')->render($view$parameters);
  6.         } elseif ($this->container->has('twig')) {
  7.             $content $this->container->get('twig')->render($view$parameters);
  8.         } else {
  9.             throw new \LogicException('You can not use the "render" method if the Templating Component or the Twig Bundle are not available. Try running "composer require symfony/twig-bundle".');
  10.         }
AbstractController->render() in src/Controller/Front/NewsController.php (line 48)
  1.         $id explode('-'$slug)[0];
  2.         $news $this->getDoctrine()->getRepository(News::class)->find($id);
  3.         return $this->render('front/newsdetails.html.twig', [
  4.             'news' => $news
  5.         ]);
  6.     }
  7.     /**
  8.      * @Route("/news/list_ajax",name="news_list_ajax", methods={"GET"},  options = { "expose" = true })
  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);
  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 (\Exception $e) {
  7.             if ($e instanceof RequestExceptionInterface) {
  8.                 $e = new BadRequestHttpException($e->getMessage(), $e);
  9.             }
  10.             if (false === $catch) {
  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 28)
  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 Trace

RuntimeError

Twig\Error\RuntimeError:
Impossible to access an attribute ("title") on a null variable.

  at templates/front/newsdetails.html.twig:16
  at twig_get_attribute()
     (var/cache/prod/twig/c7/c750294be6d43ea1322b68fec29816c7aa256cbeeac6ff26604fec15c790c07f.php:92)
  at __TwigTemplate_6071ac7cab3babfcccb619c35bb42f58754691f94ff8e2d5223d9b5c596d76dc->block_body()
     (vendor/twig/twig/src/Template.php:182)
  at Twig\Template->displayBlock()
     (var/cache/prod/twig/8f/8fff8e666195b8317d03cfc1ad358dea4c32a8dc9b89cb7626055d7d4b6b1791.php:120)
  at __TwigTemplate_c17bb79ff5b719ba3590185f514f0a17afab60a60a7eb511c8f118a31878b70a->doDisplay()
     (vendor/twig/twig/src/Template.php:405)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:378)
  at Twig\Template->display()
     (var/cache/prod/twig/c7/c750294be6d43ea1322b68fec29816c7aa256cbeeac6ff26604fec15c790c07f.php:46)
  at __TwigTemplate_6071ac7cab3babfcccb619c35bb42f58754691f94ff8e2d5223d9b5c596d76dc->doDisplay()
     (vendor/twig/twig/src/Template.php:405)
  at Twig\Template->displayWithErrorHandling()
     (vendor/twig/twig/src/Template.php:378)
  at Twig\Template->display()
     (vendor/twig/twig/src/Template.php:390)
  at Twig\Template->render()
     (vendor/symfony/twig-bridge/TwigEngine.php:54)
  at Symfony\Bridge\Twig\TwigEngine->render()
     (vendor/symfony/framework-bundle/Controller/ControllerTrait.php:233)
  at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render()
     (src/Controller/Front/NewsController.php:48)
  at App\Controller\Front\NewsController->getNews()
     (vendor/symfony/http-kernel/HttpKernel.php:169)
  at Symfony\Component\HttpKernel\HttpKernel->handleRaw()
     (vendor/symfony/http-kernel/HttpKernel.php:81)
  at Symfony\Component\HttpKernel\HttpKernel->handle()
     (vendor/symfony/http-kernel/Kernel.php:201)
  at Symfony\Component\HttpKernel\Kernel->handle()
     (public/index.php:28)