Пользовательский фильтр веток из Symfony Связка не работает - PullRequest
0 голосов
/ 01 февраля 2020

У меня есть несколько фильтров для веточек, которые мне нужно регулярно связывать вместе. Но теперь, когда я устанавливаю пакет, фильтры не найдены.

Неизвестный фильтр "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');
    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...