2016-04-06 4 views
2

私のコントローラの内部からasseticグループのアセットを読み込むにはどうすればいいですか?コントローラ内のasseticグループからアセットを取得する(テンプレートではありません)symfony2

私config.yml:

小枝を使用して
assetic: 
    assets: 
    systemassets: 
     inputs: 
     - 'bundles/belkapanel/js/*.js' 
     - 'bundles/belkapanel/router.js' 

、解決策は非常に簡単です:

{% javascripts '@systemassets'%} 
<script src="{{ asset_url }}"></script> 
{% endjavascripts %} 

それはパスのワイルドカードを解決し、すべてのコンテンツを持つ単一の.jsファイルを生成します。 "systemassets"内にあるファイル

しかし、私は生成された.jsファイルをコントローラの中に入れたいと思っています。私はそれが可能であることを知っていますが、symfonyのasseticバンドルを読んで、私はAsseticHelperを "javascripts"メソッドで見つけましたが、それを使う方法はわかりません。

/** @var DynamicAsseticHelper $asseticDynamic */ 
$asseticDynamic = $this->get('assetic.helper.dynamic'); 

$assets = $asseticDynamic->javascripts('systemassets'); // Doesn't work! 

私はAsseticTokenParserを見ていますが、解決策だと思いますか?誰かが解決策を見つけるのを助けることができますか?

+0

@takeit回答ありがとうございますが、うまくいきません。私が提供した例を使用するのと同じエラーが発生します。 ルートが存在しないため、名前付きルート "_assetic_5fdca40"のURLを生成できません。 –

答えて

0

これは動作するはずです:

$assets = $asseticDynamic->javascripts(array('@systemassets')); 

は(PHPのバージョンを確認してください)詳細については、このドキュメントchapterを参照してください。

関連する問題