raindrop / twigloader-bundle
Symfony Raindrop TwigLoaderBundle
v0.9.1
2013-03-17 17:35 UTC
Requires
- php: >=5.3.3
- doctrine/doctrine-bundle: 1.1.*
- doctrine/orm: >=2.2.3,<2.4-dev
- sonata-project/doctrine-extensions: 1.*
- symfony/framework-bundle: >=2.1.0,<2.3
- symfony/monolog-bundle: >=2.1,<3
- twig/twig: >=1.6.0,<2.0
Requires (Dev)
- symfony/class-loader: 2.1.x@dev
- symfony/finder: 2.1.x@dev
- symfony/form: 2.1.x@dev
- symfony/twig-bridge: 2.1.x@dev
- symfony/twig-bundle: 2.1.x@dev
- symfony/yaml: 2.1.x@dev
This package is not auto-updated.
Last update: 2024-09-14 15:01:56 UTC
README
此包为 Twig 模板添加数据库支持。它用 Twig_Loader_Chain 替换 Twig_Loader_FileSystem 并附加数据库和文件系统加载器。要从数据库加载,在渲染方法中使用 database: 语法。
安装:
首先将依赖项添加到您的 composer.json 文件中
"require": {
...
"raindrop/twigloader-bundle": "dev-master"
},
然后使用以下命令安装包
php composer.phar update
在您的应用程序内核中启用包
<?php // app/AppKernel.php public function registerBundles() { $bundles = array( // ... new Raindrop\TwigLoaderBundle\RaindropTwigLoaderBundle(), ); }
现在包已启用。
如果您的 AppKernel.php 中启用了 SonataAdmin 包,则还会激活 TwigTemplateAdmin
类。
配置:
这是默认配置,可以在 app/config/config.yml
中覆盖
doctrine: dbal: types: json: Sonata\Doctrine\Types\JsonType
和
raindrop_twig_loader: chain: replace_twig_loader: true loaders_by_id: raindrop_twig.loader.filesystem: 10 raindrop_twig.loader.database: 20
此配置设置 twig 链加载器并附加上述指定的加载器。
用法:
从数据库加载模板
class myController { public function indexAction() { return $this->render('database:contact_us_en'); } }
数据库加载器将使用 ::getTemplate() 方法加载模板并将结果传递给控制器渲染方法。