Я установил новый скелетный проект Symfony и добавил пакет API Platform. Я создал сущность с помощью make: entity, создал миграцию, смог успешно выполнить миграцию и теперь могу видеть таблицу в моей базе данных.
со страницы документации API swagger ( и через запрос curl в моем локальном терминале), попытки выполнить основной запрос c GET для всех ресурсов объекта не удаются. Ошибка возникает из-за того, что API использует DATABASE_URL из файла .env, а не DATABASE_URL, существующий в качестве фактической переменной среды. Это легко увидеть, поскольку файл .env использует MySQL, тогда как моя фактическая переменная среды использует PostgreSQL.
Выполнение printenv
показывает правильное значение, bin/console debug:container --env-vars
показывает правильное значение, и Doctrine четко распознает правильную переменную среды, потому что миграция выполнена успешно.
Кроме того, если я удаляю строку DATABASE_URL из файла .env, простая попытка загрузить API приводит к ошибке 500 с указанием Environment variable not found: "DATABASE_URL".
Что заставляет платформу API игнорировать мою переменную среды, в то время как Symfony и Doctrine распознают ее просто отлично?