Найти тему

Drupal 9 — Call to a member function getCacheMaxAge() on null

Не мог посмотреть страничку с последними записями журнала Drupal 9.

/admin/reports/dblog

Отладка показала ошибку:

Error: Call to a member function getCacheMaxAge() on null в Drupal\views\Plugin\views\query\Sql->getCacheMaxAge() (строка 1705 из C:\drupal\example.com\docs\core\modules\views\src\Plugin\views\query\Sql.php)

Если почистить кэш и несколько раз обновить страницу, то открыть получится.

Я пока не проверял, поскольку планирую сначала выполнить переход на более новую версию ядра, но есть мнение, что поможет патч:

diff --git a/core/modules/views/src/Plugin/views/query/Sql.php b/modules/views/src/Plugin/views/query/Sql.php
index 47f229f9..1e8e4da6 100644
--- a/core/modules/views/src/Plugin/views/query/Sql.php
+++ b/core/modules/views/src/Plugin/views/query/Sql.php
@@ -1707,7 +1707,9 @@ class Sql extends QueryPluginBase {
public function getCacheMaxAge() {
$max_age = parent::getCacheMaxAge();
foreach ($this->getAllEntities() as $entity) {
- $max_age = Cache::mergeMaxAges($max_age, $entity->getCacheMaxAge());
+ if(!is_null($entity)){
+ $max_age = Cache::mergeMaxAges($max_age, $entity->getCacheMaxAge());
+ }
}

return $max_age;

Ссылки

https://www.drupal.org/forum/support/post-installation/2019-12-23/unexpected-error-regarding-function-getcachemaxage

Источник:

Drupal 9 — Call to a member function getCacheMaxAge() on null | internet-lab.ru

💰 Поддержать проект

Если вам понравилась статья, то ставьте 👍🏻 каналу.
Пишите комментарии, задавайте вопросы, подписывайтесь.