symfony テンプレートでグローバル変数を使用するにはどうすればよいですか? 私はこれを読みまし たが、データベースからパラメーターを取得することを好みます。このサービスは、起動時に db から何かを取得する前に読み込まれると思います。そうするためのトリックを行うことは可能ですか?
5180 次
4 に答える
2
グローバル変数から離れてください。
代わりに、カスタム twig 拡張機能を作成し、データベース接続をパラメーターとして挿入します。
何かのようなもの:
services:
acme.twig.acme_extension:
class: Acme\DemoBundle\Twig\AcmeExtension
arguments: [@doctrine.dbal.default_connection]
tags:
- { name: twig.extension }
詳細:
http://symfony.com/doc/current/cookbook/templating/twig_extension.html
于 2015-01-15T14:45:18.420 に答える
2
小枝拡張機能を登録できます
services:
twig_extension:
class: Acme\DemoBundle\Extension\TwigExtension
arguments: [@doctrine]
tags:
- { name: twig.extension }
そして、TwigExtension で次のように実行できます。
class TwigExtension extends \Twig_Extension
{
public function getGlobals() {
return array(
// your key => values to make global
);
}
}
したがって、この TwigExtension でデータベースから値を取得し、getGlobals() 関数を使用してテンプレートに渡すことができます。
于 2015-01-15T14:42:25.190 に答える