У меня есть несколько фильтров для веточек, которые мне нужно регулярно связывать вместе. Но теперь, когда я устанавливаю пакет, фильтры не найдены.
Неизвестный фильтр "text2img".
Видимо, моя конфигурация службы не будет принята, потому что, если я положу файл twig-tools.yml в папке config / packages все работает. Но если я правильно понимаю документацию symfony, конфигурация должна быть обнаружена автоматически. V
symfony версия 5.0.3
Структура моего проекта:
├── src
| ├── Resources
| | └── config
| | └── twig-tools.yaml
| ├── Twig
| | └── TwigToolsExtension.php
| └── MyTwigToolsBundle.php
└── composer.json
Мой twig.tools.ymal:
services:
my_twig_tools.twig.extension.text2imgtag:
class: My\TwigToolsBundle\Twig\TwigToolsExtension
tags:
- { name: twig.extension }
Пожалуйста, дайте мне знать, если необходима дополнительная информация, и заранее благодарю.
Обновление (THX для Theva): я пытался
services:
_defaults:
autowire: true
autoconfigure: true
public: true
my_twig_tools.twig.extension.text2imgtag:
class: My\TwigToolsBundle\Twig\TwigToolsExtension
tags:
- { name: twig.extension }
и
services:
my_twig_tools.twig.extension.text2imgtag:
class: My\TwigToolsBundle\Twig\TwigToolsExtension
autowire: true
autoconfigure: true
public: true
tags:
- { name: twig.extension }
Ничего из этого не сработало.
Обновление (THX для Artamiel) Я добавил DependencyInjection в свой пакет для загрузки twig-tools.yaml но ничего не меняется.
namespace My\TwigToolsBundle\DependencyInjection;
use Symfony\Component\DependencyInjection\ContainerBuilder;
use Symfony\Component\DependencyInjection\Extension\Extension;
class MyTwigToolsExtension extends Extension
{
public function load(array $configs, ContainerBuilder $container)
{
$loader = new YamlFileLoader($container, new FileLocator(__DIR__ . '/../Resources/config'));
$loader->load('twig-tools.yaml');
}
}