2012-01-12 3 views
5

Я hvae в CSS, расположенный вКак включить CSS из папки ресурсов в Symfony 2

app/Resources/FOSUserbundle/css

Как я могу включить, что в моем шаблоне веточку

Причина я кладу CSS есть что мои все переопределенные шаблоны FOSUser находятся в этой папке. Так что я хочу, чтобы css, js-изображения все были там, чтобы, если мне нужно использовать на другом сайте, я просто скопирую эту папку.

ответ

6

Я не совсем уверен, как вы включили бы это в свои шаблоны TWIG, но ..

1) Я помещаю ресурсы, которые я использую в нескольких пакетах/проектах в каталоге web /. После этого вы можете ссылаться на то, как это:

{% stylesheets 'css/styles.css' %} 
<link href="{{ asset_url }}" type="text/css" rel="stylesheet" /> 
{% endstylesheets %} 

2) Если вам нужно переопределить FOSUserbundle в любом случае, вы можете поместить ресурсы внутри наследуемых пучка, ссылки на них, как это:

{% javascripts '@YourBundle/Resources/public/js/scripts.js' %} 
<script type="text/javascript" src="{{ asset_url }}"></script> 
{% endjavascripts %} 
6

Что вы сделали все в порядке.

Просто сделайте следующее: -

$ app/console assets:install web 

Это установит активы в общественном «веб» директории, в которой активы должны быть технически, чтобы использовать с Twig шаблоны.

активы могут быть использованы в шаблонах Twig, как это: -

{% block stylesheets %} 
     <link href="{{ asset('/css/main.css') }}" type="text/css" rel="stylesheet" /> 
    {% endblock %} 


    {% block javascripts %} 
     <script src="{{ asset('/js/main.js') }}" type="text/javascript"></script> 
    {% endblock %} 
+2

Но актив будет привязан только к папке web/css ...., но мой css является 'app/resources/....' – user825904

+0

Если вы устанавливаете активы из комплекта, вам нужно будет указать путь пакета например: {{asset ('bundles/acmedemo/css/contact.css)}} Из документа doco: http://symfony.com/doc/current/book/templating.html#including-stylesheets-and- JavaScripts-в-веточка – Squirtle

3

Хотя вопрос предполагает и переопределить случай, он также АКС для случая, когда CSS или JS находятся в общей папке, вдали от структура пучка.

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

app/Resources/views/clientSite/customFolder/css/mycss.css 

можно загрузить в любой шаблон, используя что-то вроде этого (обратите внимание на пример перекрывает полный StyleSheets блок, но не требуется, таблица стилей веточка тег может быть добавлен в любой блок):

Также не забудьте выполнить assetic: команду свалка, так Symfony знает, что должен был опубликовать CSS в папку Web/CSS со всеми другими файлами.

Смежные вопросы