0

Twig Extension 内で以下を使用したい

$kernel = $container->getService('kernel');
$path = $kernel->locateResource('@AdmeDemoBundle/path/to/file/Foo.png');

しかし、これにはカーネルを渡す必要があり、これは悪いことです。さらに、この方法を試してみると、とにかく動作させることができませんでした。

Twig 拡張機能内のリソース パスにアクセスするにはどうすればよいですか?

拡張機能は既にサービスです。Assetic を使用して URL を取得できますが、実際にはパスが必要です。

4

2 に答える 2

0

ダウンロードを提供するだけの場合は、そのタスクを実行するルートを作成する必要があります。

このようにして、ルート内でロケーターを呼び出し、単純な

{{ path('route_that_does_the_locator_thing') }}

良くなるよ。

代わりにファイルをテンプレート (CSS、JS など) に含める必要がある場合は、おそらく Assetic を使用して、ファイルをアセットとして宣言する必要があります。

于 2015-02-12T11:19:29.693 に答える