Имеет ли ".default" какое-то особое значение в идентификаторах сервисов Symfony? - PullRequest
0 голосов
/ 13 февраля 2019

Я смотрю на некоторые определения служб в FriendsOfSymfony / FOSOAuthServerBundle , и мне показалось, что есть определение для fos_oauth_server.storage.default, но другая служба в тех же списках файлов fos_oauth_server.storage, без.default часть, как зависимость.Здесь происходят какие-то подстановочные знаки или ...?Это то, о чем документация Symfony не совсем ясна.

1 Ответ

0 голосов
/ 13 февраля 2019

Идентификатор fos_oauth_server.storage - это псевдоним, указывающий на службу хранения, по умолчанию fos_oath_server.storage.default.В конфигурации вашего приложения вы можете заменить это хранилище пользовательской службой, что можно увидеть в Configuration комплекта или в справочнике по конфигурации в документации .В классе Extension комплекта вы можете видеть, как конфигурация приложения встраивается в конфигурацию сервиса комплекта и что псевдоним указывает на сконфигурированную службу (либо по умолчанию, либо ваша).

Всесервисы, требующие хранения oauth (включая классы в вашем приложении), должны ссылаться только на псевдоним, чтобы базовое хранилище (по умолчанию) можно было легко заменить, не затрагивая код, который его использует.

Эта концепция широко распространена.используется в пакетах и ​​соглашение об именах для базовой службы различается.Еще одна распространенная схема именования, особенно если есть несколько опций, которые можно настроить, - это добавление типа сервиса, например fos_oauth_server.storage.mysql, fos_oauth_server.storage.redis и т. Д.Помимо способа лучше различать псевдоним и конкретные реализации, на которые может указывать псевдоним, нет особого значения для .default в Symfony.

...