symfony - 以 DRY 方式使用 base.html.twig 作为 Symfony2 中的默认布局

标签 symfony

我有一个非常简单的问题:我有一个 Symfony2 应用程序,它没有使用基本布局文件 base.html.twig。怎样才能让你的应用使用这种布局?似乎它应该自动使用它。

编辑:我发现如果我把 {% extends "::base.html.twig" %}在任何布局文件的顶部,然后放置 {% block body %}{% endblock %}在我的内容周围,它将使用 base.html.twig .但是,到目前为止,我只知道如何在每个文件的基础上执行此操作。如果您必须在要使用它的每个模板上都这样做,那将是非常愚蠢的,而且我无法想象情况会如此,因为 DRY 原则在 Symfony 的其他任何地方都得到了很好的应用。

所以我的问题更具体的版本是:如何让 Symfony 以 DRY 方式在全局范围内使用 base.html.twig?

最佳答案

首先,您应该了解 Twig 模板编译成什么——类。然后,想象一下,您所要求的就像询问如何让您所有的普通 PHP 类扩展一些基本类而无需编写 extends在你的代码中。这听起来是个好主意吗?

关于symfony - 以 DRY 方式使用 base.html.twig 作为 Symfony2 中的默认布局,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9881774/

相关文章:

php - Symfony 没有生成包

php - 在 PHP Symfony 2.8 中访问 twig 生成的表单字段

symfony - 覆盖另一个包的参数

php - Symfony 与 nginx 不提供 .js 和 .css 文件

php - Symfony2 表单生成器 - 删除标签,使其成为占位符

database - 如何使用 Symfony 2 和 Twig 显示保存在数据库中的 HTML 标签

symfony - 哪个 Symfony2 bundle 更适合 Neo4j 集成?

forms - Symfony2 : How to add form constraint for a field in bind PRE_SET_DATA depending on the data

mysql - 与父存储库 Symfony 中的子类左连接

symfony - 访问 Sulu 前端中的安全服务 : Hashing a Users password