Усеченный фильтр (ветви) не существует в представлении пакета поставщика

Я пытаюсь использовать пакет JMS Translation, но у меня возникает эта ошибка. Я думаю, это потому, что моя версия ветки не такая, как в комплекте? Что делать?

CRITICAL - Uncaught PHP Exception Twig_Error_Syntax: "The filter "truncate" does not exist in "...\vendor\jms\translation-bundle\JMS\TranslationBundle/Resources/views/Translate/messages.html.twig" at line 14" at ...\vendor\twig\twig\lib\Twig\ExpressionParser.php line 588 

Вот мое требование в composer.json:

 "require": {
        ...
        "twig/extensions": "~1.2.0",

Вот что есть в компоновщике JMS Translation:

"conflict": {
    "twig/twig": "1.10.2"
},
"require-dev": {
    "symfony/twig-bundle": "*",

Заранее спасибо!


person virtualmail    schedule 26.02.2015    source источник


Ответы (4)


Сохраните это в txt файл и используйте когда-нибудь!

Для расширений Twig (усечение и перенос слов)

composer require twig/extensions

после этого у вас есть два пути...

$twig->addExtension(new Twig_Extensions_Extension_Text());

Или включить в services.yml

services:
    twig.extension.text:
            class: Twig_Extensions_Extension_Text
            tags:
                - { name: twig.extension }

Для Симфони 4

в файле 'config/packages/twig_extensions.yaml'

Uncomment any lines below to activate that Twig extension
Twig\Extensions\ArrayExtension: null
Twig\Extensions\DateExtension: null
Twig\Extensions\IntlExtension: null
Twig\Extensions\TextExtension: null
person José Luís Riego Montero    schedule 02.12.2015

Хотя, когда я его установил, он работал нормально, теперь ему нужно это:

services:
    twig.extension.text:
           class: Twig_Extensions_Extension_Text
           tags:
               - { name: twig.extension }
person virtualmail    schedule 26.02.2015
comment
Добавлено, что это только изменило сообщение об ошибке, сделав его более общим, говоря The filter "translate" does not exist вместо .. exist in ... :-( - person Andresch Serj; 28.04.2015

С Symfony 4 вы можете использовать twig extra https://twig.symfony.com/doc/2.x/filters/u.html

person Vladymyr Hrychenko    schedule 22.05.2020

Это решение отлично работает для меня:

  1. $ composer require -W twig/extensions
  2. Раскомментируйте любые строки ниже, чтобы активировать это расширение Twig:
Twig\Extensions\ArrayExtension: null  
Twig\Extensions\DateExtension: null  
Twig\Extensions\IntlExtension: null  
Twig\Extensions\TextExtension: null 
person RBen    schedule 10.01.2021