Ошибка LiipImagineBundle

Я устанавливаю пакет LiipImagineBundle для своего проекта Symfony. Я добавил его в ядро, настройте его:

liip_imagine:
resolvers:
    default:
        web_path: ~
filter_sets:
    avatar:
        quality: 75
        cache: ~
        filters:
            thumbnail: { size: [120, 120], mode: outbound }

Когда я запускаю страницу с формой в ней, я получаю эту ошибку:

Unable to find template "LiipImagineBundle:Form:form_div_layout.html.twig" (looked into: /Users/user/www/html/project/app/Resources/views, /Users/user/www/html/project/vendor/symfony/symfony/src/Symfony/Bridge/Twig/Resources/views/Form).

Почему ? Можете ли вы помочь мне найти проблему? И когда я удаляю конфиг и ядро ​​для LiipImagineBundle, он снова работает.

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

Редактировать: я работаю над v3.4.1 Symfony.

"php": ">=5.5.9",
"doctrine/doctrine-bundle": "^1.6",
"doctrine/orm": "^2.5",
"incenteev/composer-parameter-handler": "^2.0",
"sensio/distribution-bundle": "^5.0.19",
"sensio/framework-extra-bundle": "^5.0.0",
"symfony/monolog-bundle": "^3.1.0",
"symfony/polyfill-apcu": "^1.0",
"symfony/swiftmailer-bundle": "^2.6.4",
"symfony/symfony": "3.4.*",
"twig/twig": "^1.0||^2.0",
"jms/serializer-bundle": "^2.3.0",
"friendsofsymfony/elastica-bundle": "^4.0.1",
"friendsofsymfony/rest-bundle": "^2.3.0",
"friendsofsymfony/user-bundle": "^2.0.2",
"stof/doctrine-extensions-bundle": "^1.2.2",
"doctrine/doctrine-migrations-bundle": "^1.3.1",
"lexik/maintenance-bundle": "^2.1.2",
"liip/imagine-bundle": "^1.9.1",
"nelmio/api-doc-bundle": "^2.13.3",
"nietonfir/google-recaptcha-bundle": "^0.2.1",
"beberlei/DoctrineExtensions": "^1.0.20"

person Blitz    schedule 07.12.2017    source источник
comment
Пожалуйста, поделитесь версией Symfony и LiipImagineBundle, которую вы используете. (вы можете поделиться composer.json, если хотите).   -  person Stephan Vierkant    schedule 07.12.2017
comment
ты очистил кеш?   -  person t-n-y    schedule 07.12.2017
comment
Очистка кеша ничего не дает :(   -  person Blitz    schedule 07.12.2017
comment
Является ли ссылка на шаблон формы в вашем коде или частью самого пакета? В S3.4/4.0 внесены некоторые изменения в каталоги шаблонов. Видел несколько недавних вопросов по этому поводу.   -  person Cerad    schedule 07.12.2017
comment
Это прямо в ветке : Twig_Error_Loader in app/Resources/views/default/user_informations.html.twig (line 21) => {{ form_start(form_address) }}   -  person Blitz    schedule 07.12.2017
comment
Не уверен, что это значит, но попробуйте использовать путь пространства имен ветки: @LiipImagine\Form\form_div_layout.html.twig и посмотрите, поможет ли это.   -  person Cerad    schedule 07.12.2017
comment
Упс. Косая черта, а не обратная косая черта: @LiipImagine/Form/form_div_layout.html.twig   -  person Cerad    schedule 07.12.2017
comment
до сих пор не работает :(   -  person Blitz    schedule 07.12.2017
comment
Я только что сделал новую установку проекта, и, похоже, он работает. Попробуйте обновить свой вопрос несколькими строками из user_informations.html.twig, показывающими, куда включается файл формы div. Может быть простая опечатка.   -  person Cerad    schedule 07.12.2017


Ответы (2)


Я смог воспроизвести проблему и нашел обходной путь.

# LiipImagineExtension.php
$resources = $container->hasParameter('twig.form.resources') ? 
$container->getParameter('twig.form.resources') : array();

// The existing line
//$resources[] = 'LiipImagineBundle:Form:form_div_layout.html.twig';

// Change to
$resources[] = '@LiipImagine/Form/form_div_layout.html.twig';

$container->setParameter('twig.form.resources', $resources);

Итак, где-то в строке S3.4, похоже, что-то изменилось, чтобы использовать только пространства имен веток вместо обозначения двоеточия. Какой-то странный перерыв в BC для Symfony.

Я проверил на liip github. Это на самом деле исправлено в их невыпущенной ветке 2.0. Рассмотрите возможность обновления до "liip/imagine-bundle": "^2.0@dev",

Это также можно исправить, настроив фреймворк на использование twig:

# app/config/config.yml
framework:
    templating:
        engines: ['twig']
person Cerad    schedule 07.12.2017

Проблема существует только в том случае, если вы добавляете новые Liip\ImagineBundle\LiipImagineBundle() после Symfony\Bundle\TwigBundle\TwigBundle().

Руководство по установке должно подчеркивать тот факт, что пакет не должен загружаться после twig.

В AppKernel.php:

// ...
new Liip\ImagineBundle\LiipImagineBundle(),
new Symfony\Bundle\TwigBundle\TwigBundle(),
// ...

Судя по всему эта проблема решена в текущей последней версии 2.x

person arno    schedule 19.07.2018