2015-01-02 2 views
2

Как вы можете указать дополнительное (альтернативное) местоположение для активов: install или assetic: дамп для просмотра, например.Экспорт активов из нестандартного каталога общих ресурсов Symfony

`php app/console assets:install --symlink` 

По умолчанию это сканирование и создает символические ссылки для всех жгутов каталога Resources/public.

Но я хотел бы использовать альтернативную структуру каталогов, которая добавляет 2 дополнительных уровня, например.

/Gutensite/TemplateBundle/Templates/Admin/Resources/public 
/Gutensite/TemplateBundle/Templates/Lunar/Resources/public 
/Gutensite/TemplateBundle/Templates/Solar/Resources/public 

Использование этой структуры, assetic: dump и assets: install не находит файлы. И поэтому я не могу загрузить их, как это:

{% stylesheets '@GutensiteTemplateBundle/Templates/Admin/Resources/public/css/site.css' %} 
<link rel="stylesheet" href="{{ asset_url }}"> 
{% endstylesheets %} 

Примечания: большинство моих пучков следовать стандартному формату, но этот шаблон пакет будет содержать каталог для каждого шаблона, чтобы каталог государственных ресурсов на 2 уровней глубже , Я также должен иметь возможность устанавливать активы в клиентских каталогах за пределами корня symfony, но это может просто произойти вручную. Однако мне нужно иметь возможность ссылаться на них.

+0

Он смотрит на меня, как вы торможение структуры Symfony2. Что касается: /Gutensite/TemplateBundle/Resources/Templates/Admin/public – Putr

+0

Да, целью было организовать шаблоны в одной основной папке вместо того, чтобы распространять контроллеры, представления и файлы ресурсов для каждого шаблона во многих местах. Я [решил просто создать «поставщик шаблонов» (http://stackoverflow.com/q/27746712/3334390) и сделать каждый шаблон связкой, таким образом, они отделены от моих обычных функциональных пакетов и более организованны. Но я все равно хотел бы узнать ответ на этот вопрос, потому что вы должны иметь возможность контролировать альтернативное место установки. И у меня есть пользовательские клиентские файлы, которые необходимо установить из не-корневых мест. –

+0

Вы пробовали '/ Gutensite/TemplateBundle/Templates/Resources/public/Admin' вместо'/Gutensite/TemplateBundle/Templates/Admin/Resources/public'? –

ответ

0

Вы зарегистрировали свой пакет в AppKernel.php?

В качестве альтернативы, если вы не имеете класса расслоения в вашем пачке, вы можете использовать эти обозначения в шаблоне веточки:

{% stylesheets '%kernel.root_dir%/../src/Gutensite/TemplateBundle/Templates/Admin/Resources/public/css/site.css' %} 
    <link rel="stylesheet" href="{{ asset_url }}"> 
{% endstylesheets %} 
+0

Да, мы регистрируем пакет в AppKernel.php. Однако это не работает, и было бы неплохо указать альтернативные расположения файлов, особенно для клиентских файлов вне основной файловой структуры. –

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