Exceptions
Exception
Twig\Error\ RuntimeError
Show exception properties
Twig\Error\RuntimeError {#1571 -lineno: 16 -rawMessage: "Impossible to access an attribute ("title") on a null variable." -source: Twig\Source {#1436 -code: """ {% extends 'base.twig' %}\r\n \r\n {% block content %}\r\n <main class="main">\r\n <div class="news-item__block">\r\n <div class="container">\r\n <ul class="breadcrumbs d-none d-lg-flex">\r\n <li class="breadcrumbs-item">\r\n <a class="breadcrumbs-item-link" href="{{ path('homepage') }}">Главная</a>\r\n </li>\r\n {% if ['news', 'stocks'] in app.current_route %}\r\n <li class="breadcrumbs-item">\r\n <a class="breadcrumbs-item-link" href="{{ app.current_route == 'news' ? path('news') : path('stocks') }}">Акции/Новости</a>\r\n </li>\r\n {% endif %}\r\n <li class="breadcrumbs-item">{{ item.title }}</li>\r\n </ul>\r\n <div class="block__title-md mt-1">{{ item.title }}</div>\r\n <div class="news-item__content{% if item.webPathImage() is not defined %} d-block{% endif %}">\r\n {% if item.webPathImage() is defined and item.webPathImage() is not empty %}\r\n <div class="news-item__image">\r\n <img src="{{ item.webPathImage() }}" alt="{{ item.title }}" />\r\n </div>\r\n {% endif %}\r\n <div class="news-item__text">\r\n <div class="news-item__date">Опубликовано: {{ item.created | normalDate }}</div>\r\n <h2 class="news-item__title">{{ item.title }}</h2>\r\n <div class="news-item__text">{{ item.text | raw }}</div>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n \r\n {% if otherNews is defined and otherNews is not empty %}\r\n <div class="news__block block">\r\n <div class="container">\r\n <div class="block__title-md">Другие новости</div>\r\n <div class="swiper news__slider">\r\n <div class="swiper-wrapper">\r\n {% for otherItem in otherNews %}\r\n {% if otherItem.isStock %}\r\n {% set path = path('stocks_item', {code: otherItem.code}) %}\r\n {% else %}\r\n {% set path = path('news_item', {code: otherItem.code}) %}\r\n {% endif %}\r\n <a href="{{ path }}" class="news__slide news__item swiper-slide">\r\n <div class="news__item-image">\r\n <img src="{{ otherItem.webPathImage() }}" alt="{{ otherItem.title }}" />\r\n </div>\r\n <div class="news__item-body">\r\n <div class="news__item-date">{{ otherItem.created | normalDate }}</div>\r\n <div class="news__item-title">{{ otherItem.title }}</div>\r\n </div>\r\n </a>\r\n {% endfor %}\r\n </div>\r\n <div class="slider-btns d-none d-md-flex">\r\n <button class="slider-btn analyses__slider-btn-prev analyses__slider-btn">\r\n <svg width="44" height="16" viewBox="0 0 44 16" fill="none" xmlns="http://www.w3.org/2000/svg">\r\n <path d="M43 9C43.5523 9 44 8.55228 44 8C44 7.44772 43.5523 7 43 7L43 9ZM0.292893 7.29289C-0.0976295 7.68341 -0.0976296 8.31658 0.292892 8.7071L6.65685 15.0711C7.04738 15.4616 7.68054 15.4616 8.07107 15.0711C8.46159 14.6805 8.46159 14.0474 8.07107 13.6569L2.41422 8L8.07107 2.34314C8.46159 1.95262 8.46159 1.31945 8.07107 0.928929C7.68054 0.538405 7.04738 0.538405 6.65685 0.928929L0.292893 7.29289ZM43 7L1 7L1 9L43 9L43 7Z" fill="var(--icon-color)"/>\r\n </svg>\r\n </button>\r\n <button class="slider-btn analyses__slider-btn-next analyses__slider-btn">\r\n <svg width="44" height="16" viewBox="0 0 44 16" fill="none" xmlns="http://www.w3.org/2000/svg">\r\n <path d="M1 7C0.447715 7 4.82823e-08 7.44772 0 8C-4.82823e-08 8.55228 0.447715 9 1 9L1 7ZM43.7071 8.70711C44.0976 8.31659 44.0976 7.68342 43.7071 7.2929L37.3431 0.928935C36.9526 0.538411 36.3195 0.538411 35.9289 0.928935C35.5384 1.31946 35.5384 1.95262 35.9289 2.34315L41.5858 8L35.9289 13.6569C35.5384 14.0474 35.5384 14.6805 35.9289 15.0711C36.3195 15.4616 36.9526 15.4616 37.3431 15.0711L43.7071 8.70711ZM1 9L43 9L43 7L1 7L1 9Z" fill="var(--icon-color)"/>\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n {% endif %}\r\n {% if item.additionalsAnalyses is defined and item.additionalsAnalyses is not empty %}\r\n <div class="news__block block">\r\n <div class="container">\r\n <div class="block__title-md">Исследования</div>\r\n <div class="swiper news__slider">\r\n <div class="swiper-wrapper">\r\n {% for analyse in item.additionalsAnalyses %}\r\n {% if analyse.prices.count > 0 %}\r\n <a href="{{ path('analyse', {code: analyse.code}) }}" class="news__slide news__item swiper-slide">\r\n <div class="news__item-body">\r\n <div class="news__item-title">{{ analyse.name }}</div>\r\n </div>\r\n </a>\r\n {% endif %}\r\n {% endfor %}\r\n </div>\r\n <div class="slider-btns d-none d-md-flex">\r\n <button class="slider-btn analyses__slider-btn-prev analyses__slider-btn">\r\n <svg width="44" height="16" viewBox="0 0 44 16" fill="none" xmlns="http://www.w3.org/2000/svg">\r\n <path d="M43 9C43.5523 9 44 8.55228 44 8C44 7.44772 43.5523 7 43 7L43 9ZM0.292893 7.29289C-0.0976295 7.68341 -0.0976296 8.31658 0.292892 8.7071L6.65685 15.0711C7.04738 15.4616 7.68054 15.4616 8.07107 15.0711C8.46159 14.6805 8.46159 14.0474 8.07107 13.6569L2.41422 8L8.07107 2.34314C8.46159 1.95262 8.46159 1.31945 8.07107 0.928929C7.68054 0.538405 7.04738 0.538405 6.65685 0.928929L0.292893 7.29289ZM43 7L1 7L1 9L43 9L43 7Z" fill="var(--icon-color)"/>\r\n </svg>\r\n </button>\r\n <button class="slider-btn analyses__slider-btn-next analyses__slider-btn">\r\n <svg width="44" height="16" viewBox="0 0 44 16" fill="none" xmlns="http://www.w3.org/2000/svg">\r\n <path d="M1 7C0.447715 7 4.82823e-08 7.44772 0 8C-4.82823e-08 8.55228 0.447715 9 1 9L1 7ZM43.7071 8.70711C44.0976 8.31659 44.0976 7.68342 43.7071 7.2929L37.3431 0.928935C36.9526 0.538411 36.3195 0.538411 35.9289 0.928935C35.5384 1.31946 35.5384 1.95262 35.9289 2.34315L41.5858 8L35.9289 13.6569C35.5384 14.0474 35.5384 14.6805 35.9289 15.0711C36.3195 15.4616 36.9526 15.4616 37.3431 15.0711L43.7071 8.70711ZM1 9L43 9L43 7L1 7L1 9Z" fill="var(--icon-color)"/>\r\n </svg>\r\n </button>\r\n </div>\r\n </div>\r\n </div>\r\n </div>\r\n {% endif %}\r\n \r\n {% include 'includes/tg_consult.twig' %}\r\n </main>\r\n {% endblock %}\r\n {% block js %}\r\n <script>\r\n var swiper = new Swiper(".news__slider", {\r\n navigation: {\r\n nextEl: ".analyses__slider-btn-next",\r\n prevEl: ".analyses__slider-btn-prev",\r\n },\r\n \r\n breakpoints: {\r\n 320: {\r\n slidesPerView: "auto",\r\n spaceBetween: 10,\r\n },\r\n 760: {\r\n slidesPerView: 3,\r\n spaceBetween: 7,\r\n },\r\n 992: {\r\n slidesPerView: 3,\r\n spaceBetween: 16,\r\n },\r\n },\r\n });\r\n </script>\r\n {% endblock %} """ -name: "main/news_item.twig" -path: "/sites/dev.analizy.uz/templates/main/news_item.twig" } -phpFile: "/sites/dev.analizy.uz/vendor/twig/twig/src/Extension/CoreExtension.php" -phpLine: 1749 }
in
templates/main/news_item.twig
(line 16)
{% if ['news', 'stocks'] in app.current_route %}<li class="breadcrumbs-item"><a class="breadcrumbs-item-link" href="{{ app.current_route == 'news' ? path('news') : path('stocks') }}">Акции/Новости</a></li>{% endif %}<li class="breadcrumbs-item">{{ item.title }}</li></ul><div class="block__title-md mt-1">{{ item.title }}</div><div class="news-item__content{% if item.webPathImage() is not defined %} d-block{% endif %}">{% if item.webPathImage() is defined and item.webPathImage() is not empty %}<div class="news-item__image">
in
var/cache/dev/twig/c4/c40fac987f5238a30880236ca4a195be.php
::
getAttribute
(line 101)
</li>";}// line 16yield " <li class=\"breadcrumbs-item\">";yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["item"]) || array_key_exists("item", $context) ? $context["item"] : (function () { throw new RuntimeError('Variable "item" does not exist.', 16, $this->source); })()), "title", [], "any", false, false, false, 16), "html", null, true);yield "</li></ul><div class=\"block__title-md mt-1\">";// line 18yield $this->env->getRuntime('Twig\Runtime\EscaperRuntime')->escape(CoreExtension::getAttribute($this->env, $this->source, (isset($context["item"]) || array_key_exists("item", $context) ? $context["item"] : (function () { throw new RuntimeError('Variable "item" does not exist.', 18, $this->source); })()), "title", [], "any", false, false, false, 18), "html", null, true);
in
vendor/twig/twig/src/Template.php
->
block_content
(line 446)
throw new \LogicException('A block must be a method on a \Twig\Template instance.');}if (null !== $template) {try {yield from $template->$block($context, $blocks);} catch (Error $e) {if (!$e->getSourceContext()) {$e->setSourceContext($template->getSourceContext());}
in
var/cache/dev/twig/f8/f852142952e3f41ffe3897141c3ec6eb.php
->
yieldBlock
(line 209)
// line 93yield from $this->load("includes/header.twig", 93)->unwrap()->yield($context);// line 94yield from $this->unwrap()->yieldBlock('breadcrumbs', $context, $blocks);// line 95yield from $this->unwrap()->yieldBlock('content', $context, $blocks);// line 373yield from $this->load("includes/footer.twig", 373)->unwrap()->yield($context);// line 374yield from $this->unwrap()->yieldBlock('js', $context, $blocks);// line 424
in
vendor/twig/twig/src/Template.php
->
doDisplay
(line 402)
{$context += $this->env->getGlobals();$blocks = array_merge($this->blocks, $blocks);try {yield from $this->doDisplay($context, $blocks);} catch (Error $e) {if (!$e->getSourceContext()) {$e->setSourceContext($this->getSourceContext());}
in
var/cache/dev/twig/c4/c40fac987f5238a30880236ca4a195be.php
->
yield
(line 54)
$__internal_6f47bbe9983af81f1e7450e9a3e3768f = $this->extensions["Symfony\\Bridge\\Twig\\Extension\\ProfilerExtension"];$__internal_6f47bbe9983af81f1e7450e9a3e3768f->enter($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof = new \Twig\Profiler\Profile($this->getTemplateName(), "template", "main/news_item.twig"));$this->parent = $this->load("base.twig", 1);yield from $this->parent->unwrap()->yield($context, array_merge($this->blocks, $blocks));$__internal_5a27a8ba21ca79b61932376b2fa922d2->leave($__internal_5a27a8ba21ca79b61932376b2fa922d2_prof);$__internal_6f47bbe9983af81f1e7450e9a3e3768f->leave($__internal_6f47bbe9983af81f1e7450e9a3e3768f_prof);
in
vendor/twig/twig/src/Template.php
->
doDisplay
(line 402)
{$context += $this->env->getGlobals();$blocks = array_merge($this->blocks, $blocks);try {yield from $this->doDisplay($context, $blocks);} catch (Error $e) {if (!$e->getSourceContext()) {$e->setSourceContext($this->getSourceContext());}
in
vendor/twig/twig/src/Template.php
->
yield
(line 358)
return $this->blocks;}public function display(array $context, array $blocks = []): void{foreach ($this->yield($context, $blocks) as $data) {echo $data;}}public function render(array $context): string
in
vendor/twig/twig/src/Template.php
->
display
(line 373)
ob_start();} else {ob_start(function () { return ''; });}try {$this->display($context);} catch (\Throwable $e) {while (ob_get_level() > $level) {ob_end_clean();}
in
vendor/twig/twig/src/TemplateWrapper.php
->
render
(line 51)
yield from $this->template->yieldBlock($name, $context);}public function render(array $context = []): string{return $this->template->render($context);}/*** @return void*/
in
vendor/twig/twig/src/Environment.php
->
render
(line 333)
* @throws SyntaxError When an error occurred during compilation* @throws RuntimeError When an error occurred during rendering*/public function render($name, array $context = []): string{return $this->load($name)->render($context);}/*** Displays a template.*
in
vendor/symfony/framework-bundle/Controller/AbstractController.php
->
render
(line 467)
if (null !== $block) {return $this->container->get('twig')->load($view)->renderBlock($block, $parameters);}return $this->container->get('twig')->render($view, $parameters);}private function doRender(string $view, ?string $block, array $parameters, ?Response $response, string $method): Response{$content = $this->doRenderView($view, $block, $parameters, $method);
in
vendor/symfony/framework-bundle/Controller/AbstractController.php
->
doRenderView
(line 472)
return $this->container->get('twig')->render($view, $parameters);}private function doRender(string $view, ?string $block, array $parameters, ?Response $response, string $method): Response{$content = $this->doRenderView($view, $block, $parameters, $method);$response ??= new Response();if (200 === $response->getStatusCode()) {foreach ($parameters as $v) {if ($v instanceof FormInterface && $v->isSubmitted() && !$v->isValid()) {
in
vendor/symfony/framework-bundle/Controller/AbstractController.php
->
doRender
(line 284)
* If an invalid form is found in the list of parameters, a 422 status code is returned.* Forms found in parameters are auto-cast to form views.*/protected function render(string $view, array $parameters = [], ?Response $response = null): Response{return $this->doRender($view, null, $parameters, $response, __FUNCTION__);}/*** Renders a block in a view.*
AbstractController->render('main/news_item.twig', array('item' => null))
in
src/Controller/HomeController.php
(line 159)
#[Route('/page/{page}', name: 'page', priority: 1)]public function page($page): Response{$item = $this->doctrine->getRepository(Page::class)->findOneBy(['code' => $page, 'activity' => 1]);return $this->render('main/news_item.twig', compact('item'));}#[Route('/news/{code}', name: 'news_item')]public function newsItem($code): Response{
in
vendor/symfony/http-kernel/HttpKernel.php
->
page
(line 183)
$this->dispatcher->dispatch($event, KernelEvents::CONTROLLER_ARGUMENTS);$controller = $event->getController();$arguments = $event->getArguments();// call controller$response = $controller(...$arguments);// viewif (!$response instanceof Response) {$event = new ViewEvent($this, $request, $type, $response, $event);$this->dispatcher->dispatch($event, KernelEvents::VIEW);
in
vendor/symfony/http-kernel/HttpKernel.php
->
handleRaw
(line 76)
$request->headers->set('X-Php-Ob-Level', (string) ob_get_level());$this->requestStack->push($request);$response = null;try {return $response = $this->handleRaw($request, $type);} catch (\Throwable $e) {if ($e instanceof \Error && !$this->handleAllThrowables) {throw $e;}
in
vendor/symfony/http-kernel/Kernel.php
->
handle
(line 193)
if (!$this->handlingHttpCache) {$this->resetServices = true;}try {return $this->getHttpKernel()->handle($request, $type, $catch);} finally {--$this->requestStackSize;}}
in
vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php
->
handle
(line 35)
) {}public function run(): int{$response = $this->kernel->handle($this->request);if (Kernel::VERSION_ID >= 60400) {$response->send(false);if (\function_exists('fastcgi_finish_request') && !$this->debug) {
in
vendor/autoload_runtime.php
->
run
(line 32)
$app = $app(...$args);exit($runtime->getRunner($app)->run());
<?phpuse App\Kernel;date_default_timezone_set('Asia/Tashkent');require_once dirname(__DIR__).'/vendor/autoload_runtime.php';ini_set('memory_limit', -1);return function (array $context) {return new Kernel($context['APP_ENV'], (bool) $context['APP_DEBUG']);};
Logs
No log messages
Stack Trace
|
RuntimeError
|
|---|
Twig\Error\RuntimeError:
Impossible to access an attribute ("title") on a null variable in "main/news_item.twig" at line 16.
at templates/main/news_item.twig:16
at Twig\Extension\CoreExtension::getAttribute(object(Environment), object(Source), null, 'title', array(), 'any', false, false, false, 16)
(var/cache/dev/twig/c4/c40fac987f5238a30880236ca4a195be.php:101)
at __TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208->block_content(array('item' => null, 'app' => object(AppVariable), 'seo' => object(Seo), 'context' => object(LPUContext), 'ver' => 2038903742, 'isApp' => false), array('cssLibs' => array(object(__TwigTemplate_f8b62af1220c599742695702e350404a), 'block_cssLibs'), 'breadcrumbs' => array(object(__TwigTemplate_f8b62af1220c599742695702e350404a), 'block_breadcrumbs'), 'content' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_content'), 'js' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_js')))
(vendor/twig/twig/src/Template.php:446)
at Twig\Template->yieldBlock('content', array('item' => null, 'app' => object(AppVariable), 'seo' => object(Seo), 'context' => object(LPUContext), 'ver' => 2038903742, 'isApp' => false), array('cssLibs' => array(object(__TwigTemplate_f8b62af1220c599742695702e350404a), 'block_cssLibs'), 'breadcrumbs' => array(object(__TwigTemplate_f8b62af1220c599742695702e350404a), 'block_breadcrumbs'), 'content' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_content'), 'js' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_js')))
(var/cache/dev/twig/f8/f852142952e3f41ffe3897141c3ec6eb.php:209)
at __TwigTemplate_f8b62af1220c599742695702e350404a->doDisplay(array('item' => null, 'app' => object(AppVariable), 'seo' => object(Seo), 'context' => object(LPUContext), 'ver' => 2038903742, 'isApp' => false), array('cssLibs' => array(object(__TwigTemplate_f8b62af1220c599742695702e350404a), 'block_cssLibs'), 'breadcrumbs' => array(object(__TwigTemplate_f8b62af1220c599742695702e350404a), 'block_breadcrumbs'), 'content' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_content'), 'js' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_js')))
(vendor/twig/twig/src/Template.php:402)
at Twig\Template->yield(array('item' => null, 'app' => object(AppVariable), 'seo' => object(Seo), 'context' => object(LPUContext)), array('cssLibs' => array(object(__TwigTemplate_f8b62af1220c599742695702e350404a), 'block_cssLibs'), 'breadcrumbs' => array(object(__TwigTemplate_f8b62af1220c599742695702e350404a), 'block_breadcrumbs'), 'content' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_content'), 'js' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_js')))
(var/cache/dev/twig/c4/c40fac987f5238a30880236ca4a195be.php:54)
at __TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208->doDisplay(array('item' => null, 'app' => object(AppVariable), 'seo' => object(Seo), 'context' => object(LPUContext)), array('content' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_content'), 'js' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_js')))
(vendor/twig/twig/src/Template.php:402)
at Twig\Template->yield(array('item' => null, 'app' => object(AppVariable), 'seo' => object(Seo), 'context' => object(LPUContext)), array('content' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_content'), 'js' => array(object(__TwigTemplate_f5312d93f5aa7bd91ac1eddb00b55208), 'block_js')))
(vendor/twig/twig/src/Template.php:358)
at Twig\Template->display(array('item' => null))
(vendor/twig/twig/src/Template.php:373)
at Twig\Template->render(array('item' => null))
(vendor/twig/twig/src/TemplateWrapper.php:51)
at Twig\TemplateWrapper->render(array('item' => null))
(vendor/twig/twig/src/Environment.php:333)
at Twig\Environment->render('main/news_item.twig', array('item' => null))
(vendor/symfony/framework-bundle/Controller/AbstractController.php:467)
at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRenderView('main/news_item.twig', null, array('item' => null), 'render')
(vendor/symfony/framework-bundle/Controller/AbstractController.php:472)
at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->doRender('main/news_item.twig', null, array('item' => null), null, 'render')
(vendor/symfony/framework-bundle/Controller/AbstractController.php:284)
at Symfony\Bundle\FrameworkBundle\Controller\AbstractController->render('main/news_item.twig', array('item' => null))
(src/Controller/HomeController.php:159)
at App\Controller\HomeController->page('politic')
(vendor/symfony/http-kernel/HttpKernel.php:183)
at Symfony\Component\HttpKernel\HttpKernel->handleRaw(object(Request), 1)
(vendor/symfony/http-kernel/HttpKernel.php:76)
at Symfony\Component\HttpKernel\HttpKernel->handle(object(Request), 1, true)
(vendor/symfony/http-kernel/Kernel.php:193)
at Symfony\Component\HttpKernel\Kernel->handle(object(Request))
(vendor/symfony/runtime/Runner/Symfony/HttpKernelRunner.php:35)
at Symfony\Component\Runtime\Runner\Symfony\HttpKernelRunner->run()
(vendor/autoload_runtime.php:32)
at require_once('/sites/dev.analizy.uz/vendor/autoload_runtime.php')
(public/index.php:5)
|