[Symfony 系列] 二、Twig模板

安装

#进入容器
docker exec -it symfonybi-caddy-1 /bin/sh
#/srv/app #
composer require twig<br/>

测试

// src/Controller/TestController.php
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
/**
 * 继承 AbstractController 类 
 */
class TestController extends AbstractController
{
    /**
     * 在路由配置路径为/test/index 或安装 annotations 包
     */
    public function index(): Response
    {
        $time = time();
        return $this->render('Test/index.html.twig', [
            'time' => $time,
        ]);
    }
}

Twig

{# templates/Test/index.html.twig #}
<h2>当前时间:{{ time }}</h2>

配置

#查看当前配配置
php bin/console config:dump-reference twig

几个重要的配置项

主题 form_themes

定义一个或多个应用于应用程序所有表单的表单主题:

# config/packages/twig.yaml
twig:
    form_themes: ['bootstrap_5_layout.html.twig', 'form/my_theme.html.twig']
    # ...

form_themes 可定义多个主题,后一个可覆盖前一个;

默认目录 default_path

默认:’%kernel.project_dir%/templates’

默认情况下,Symfony将在其中查找应用程序Twig模板的目录的路径。如果将模板存储在多个目录中,请同时使用路径选项。

[1]Symfony.twig 模板[DB/OL]https://symfony.com/doc/6.1/reference/configuration/twig.html

[2]Symfony.如何将变量自动注入所有模板[DB/OL]https://symfony.com/doc/6.1/templating/global_variables.html

发表评论