子页面扩展 base.html.twig 但 base.html.twig 的内容未呈现

Child page extends base.html.twig BUT content of base.html.twig is not rendered

我正在使用 sulu cms 和 symfony。刚开始做项目。 这是我的 base.html.twig

<!DOCTYPE html>
<html lang="{{ app.request.locale|split('_')[0] }}">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">

{% block meta %}
    {% include "@SuluWebsite/Extension/seo.html.twig" with {
        "seo": extension.seo|default([]),
        "content": content|default([]),
        "localizations": localizations|default([]),
        "shadowBaseLocale": shadowBaseLocale|default(),
    } %}
{% endblock %}

{% block style %}{% endblock %}
</head>
<body>
<header>
    {% block header %}
        <nav>
        </nav>
    {% endblock %}
</header>

<form action="{{ path('sulu_search.website_search') }}" method="GET">
    <input name="q" type="text" placeholder="Search"/>
    <input type="submit" value="Go"/>
</form>

<main>
    {% block content %}{% endblock %}
</main>

<footer>
    {% block footer %}
        <p>Copyright {{ 'now'|date('Y') }} SULU</p>
    {% endblock %}
</footer>

{% block javascripts %}{% endblock %}
</body>
</html>

然后我在 event.html.twig

中扩展它
{% extends "base.html.twig" %}

{% block content %}
<h1>This is Event Template</h1>
<h1>{{ content.title }}</h1>
<h2>{{ content.subtitle }}</h2>

{% for image in content.photo %}
    <img src="{{ image.thumbnails['500x'] }}" alt="{{ image.title }}" title="{{ image.description|default(image.title) }}">
{% endfor %}
{% endblock %}

但是渲染出来的页面只显示子内容

<h1>This is Event Template</h1>
<h1>Veranstaltungstitel</h1>
<h2></h2>

父基础模板未呈现的原因可能是什么? 无法通过 google.

找到类似的内容

更新

我在 Windows 10 Pro 计算机上克隆了一个 git 存储库,其中包含其他人在 Linux 系统上创建的 sulu cms / symfony 项目。

我将 .env 文件更改为 APP_ENV=开发

我是 运行 Apache (MAMP) 上的项目,有一个 mysql (MAMP) 数据库。数据库已连接,我可以在管理面板中看到数据,并使用 phpmyadmin 查看数据库中更改的数据。

在我的电脑上安装了 Symfony CLI 版本 v4.26.11。

您是否像文档中那样使用 create-project 命令创建了 sulu 项目。那么你应该在 dev 环境下。通过进入您的本地 .env.local 检查它是否设置为 APP_ENV=dev 以便自动检测更改并且不需要清除缓存。这仅用于开发!!!

如果您在生产服务器上,请确保清除所有缓存。这包括 adminwebsite 缓存:

bin/adminconsole cache:clear
bin/website cache:clear

如果仍然没有帮助,请检查对 twig 模板的任何编辑是否对您的前端产生任何影响。还尝试通过删除 var/cache 目录来删除所有缓存:

rm -rf var/cache

如果不是这种情况,则表明 hint 您的机器或服务器已 opcache 激活并且所有 PHP 文件都已缓存。如果您在开发机器上,您应该配置 opcache 以检查文件时间戳,请参阅:

https://www.php.net/manual/de/opcache.configuration.php#ini.opcache.validate-timestamps

如果您在生产服务器上,它会重新启动您的网络服务器 and/or php 进程或使用像这样的缓存工具:

https://github.com/gordalina/cachetool

清除缓存。

base.html.twig 页面未呈现的原因是主题模板覆盖了默认主题。