Создание URL-адресов в консольных командах и любых других местах за пределами веб-контекста является сложной задачей, поскольку Symfony не имеет доступа к текущему хосту, базовому URL-адресу и т. д.
Решение состоит в том, чтобы настроить контекст запроса, используя параметры контейнера, такие как router.request_context.host
. В Symfony 5.1 уже улучшили это, позволяя вам настраивать эти значения с помощью параметра framework.router
. Однако продолжали работать над этой функцией, чтобы еще больше упростить ее.
Вот почему в Symfony 5.1 вы сможете настроить весь контекст запроса, используя один параметр default_uri
, вместо того, чтобы определять несколько параметров:
# Before
framework:
router:
host: 'example.org'
scheme: 'https'
base_url: 'my/path'
# After
framework:
router:
default_uri: 'https://example.org/my/path/'
В связи с этим в запросе #36681 обновили конфигурацию ресурсов для повторного использования контекста маршрутизатора по умолчанию. Это означает, что в большинстве случаев определения параметра default_uri
достаточно для настройки как контекста запроса, так и контекста ресурсов.