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

그것은 나에게 보인다. 무엇에 대해서 : /Gutensite/TemplateBundle/Resources/Templates/Admin/public – Putr

+0

예, 목표는 하나의 기본 폴더에 템플릿을 구성하는 것입니다. 필자는 [템플릿 벤더] (http://stackoverflow.com/q/27746712/3334390)를 만들고 각 템플릿을 번들로 만들어서 일반 기능 번들과 분리되고보다 체계적으로 분리되도록했습니다. 하지만 대체 설치 위치를 제어 할 수 있어야하므로이 질문에 대한 답을 알고 싶습니다. 비 루트 위치에서 설치해야하는 사용자 지정 클라이언트 파일이 있습니다. –

+0

'/ Gutensite/TemplateBundle/Templates/Admin/Resources/public' 대신'/ Gutensite/TemplateBundle/Templates/Resources/public/Admin'을 시도 했습니까? –

답변

0

번들을 AppKernel.php에 등록 했습니까? 당신이 당신의 번들 번들 클래스가없는 경우

또는, 당신은 당신의 나뭇 가지 템플릿이 표기법을 사용할 수 있습니다 : 당신이 Symfony2 구조를 제동하는 것처럼

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

예, 우리는 AppKernel.php에 번들을 등록합니다. 그러나이 방법은 효과가 없으며 특히 코어 파일 구조 외부의 클라이언트 파일의 경우 대체 파일 위치를 지정할 수 있어야합니다. –

관련 문제