サービスを作成した場合、twig.extensionを作成せずに、twigからサービスにアクセスする方法はありますか?
35332 次
2 に答える
121
config.yml
たとえば、サービスを小枝グローバル変数に設定できます。
#app/config/config.yml
twig:
globals:
your_service: "@your_service"
そして、template.html.twig
ファイル内で次のようにサービスを呼び出すことができます。
{{ your_service.someMethod(twig_variable) }}
ここを参照してください。
于 2012-11-06T07:01:18.083 に答える
0
Symfony 5でこれを行うには、最初にservices.yamlでサービスを宣言する必要があります。次に例を示します。
App \ Service \ NavigationHelper: 引数: foo:bar
次に、Twigで使用するサービスを宣言できます。これを実現するには、packages/twig.yamlにあるYamlファイルの「globals」セクションに変数として追加する必要があります。
globals:
navHelper: '@App\Service\NavigationHelper'
これで、Mun Mun Dasが最後のコードスニペットで提案したように、テンプレートのサービスメソッドを使用できます。
于 2021-06-04T08:44:21.917 に答える