Как исправить ошибку: «Вызов функции-члена listSpatialIndexes() при нулевом значении» и почему это происходит?

У меня есть команда:

php bin/console doctrine:schema:validate -e prod

Когда я запускаю его, я получаю ошибку

"Call to a member function listSpatialIndexes() on null".

Пожалуйста, помогите мне, объясните, почему это происходит и как это исправить.

Кроме того, команда "php bin/console doctrine:schema:validate -e dev" заканчивается ошибкой

"[ERROR] The database schema is not in sync with the current mapping file."

Проверьте аналогичную (такую ​​же) проблему, о которой сообщается на github. Проблема заключалась в слишком поздней регистрации подписчика на событие. Возможно, это может быть полезно и для вас: github.com/jsor/doctrine-postgis/issues/9

MilanG 30.05.2019 10:16

Извините, а где мне его зарегистрировать? Регистрация где-то в конфигурационных файлах? Конфигурация дана для ZF2, но я использую Symfony4.

Clarity 30.05.2019 10:26
Стоит ли изучать PHP в 2023-2024 годах?
Стоит ли изучать PHP в 2023-2024 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Symfony Station Communiqué - 17 февраля 2023 г
Symfony Station Communiqué - 17 февраля 2023 г
Это коммюнике первоначально появилось на Symfony Station , вашем источнике передовых новостей Symfony, PHP и кибербезопасности.
Управление ответами api для исключений на Symfony с помощью KernelEvents
Управление ответами api для исключений на Symfony с помощью KernelEvents
Много раз при создании api нам нужно возвращать клиентам разные ответы в зависимости от возникшего исключения.
0
2
101
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Проблема заключалась в том, что переменной server_version в pgsql в доктрине.yaml не существовало. Для решения проблемы добавьте

 pgsql:
    ...
    server_version: <insert your server version here, in my case 11.3>

Вы можете увидеть версию сервера, добавив echo($this->getServerVersion()) и затем exit(1) в строке 452 в файле поставщика vendor\doctrine\dbal\lib\Doctrine\DBAL\Connection.php.

Другие вопросы по теме