Assetic: дамп работает некорректно при переопределении шаблонов пакетов

Шаблоны пакетов в Symfony2 можно переопределить в соответствии с документацией http://symfony.com/doc/current/book/templating.html#overriding-bundle-templates Недавно мы обнаружили, что Assetic (вероятно) не знает об этом сценарии.

Давайте посмотрим на следующую структуру:

сам комплект:

  • /src/XXX/MyBundle/Resources
    • public
      • template.hbs
    • views
      • Default
        • template.html.twig

и его переопределения:

  • /app/Resources/XXXMyBundle/
    • public
      • template.hbs
    • views
      • Default
        • template.html.twig

Template.html.twig (как исходный из пакета, так и переопределенный) содержат следующий код:

{% javascripts output='js/hbs/templates.js'
    '@XXXMyBundle/Resources/public/template.hbs'
%}
    <script type="text/javascript" src="{{ asset_url }}"></script>
{% endjavascripts %} 

Теперь было бы логично, что при сбросе ассетов, assets также искали возможные переопределения, в нашем примере это /app/Resources/XXXMyBundle/public/template.hbs

но, как показывает мое тестирование, он всегда компилирует из папки /src

Возможно, при анализе нотации '@XXXMyBundle/Resources/public/template.hbs', assets не проверяет, могут ли @XXXMyBundle иметь переопределения в папке /app.


person Ross Ivantsiv    schedule 04.12.2013    source источник
comment
Почему вы ожидаете, что Assetic будет искать в вашем каталоге public? Он должен смотреть только в views/*, если я правильно понял?   -  person Jovan Perovic    schedule 04.12.2013


Ответы (1)


Думаю, вы нашли этот документ, но все написанное здесь относится только к шаблонам. Эта логика очень проста, вы можете проверить ее в TemplateFinder в FrameworkBundle.

person Alexey B.    schedule 04.12.2013