Symfony4 覆盖 FosUserBundle 模板

Symfony4 Override FosUserBundle Template

我正在关注这个:https://symfony.com/doc/current/bundles/FOSUserBundle/overriding_templates.html

我在里面找到了默认模板vendor/friendsofsymfony/user-bunfle/views/layout.html.twig

文档然后说将新布局模板放置在 app/Resources/FOSUserBundle/views/layout.html.twig。事情是,在 Symfony4 中,我认为没有更多的应用程序文件夹。那我该怎么做呢?谢谢

你是对的,这是因为 Symfony 4 的文档没有更新。你需要做的是从 vendor/friendsofsymfony/user-bundle/Resources/views 复制所有模板文件,并将它们放在你在 /templates/bundles/FOSUserBundle。然后您可以编辑新创建的目录中的文件,这将覆盖默认模板。

在 Symfony4 中,您可以通过将模板放在 src/Resources/FOSUserBundle/views 而不是 templates/bundles/FOSUserBundle 来覆盖它(是的,遗憾的是不在 templates 目录)

在 Symfony 4.4 中,覆盖 FOSUserBundle 模板的正确位置是:

app/Ressources/FOSUserBundle/views

这项工作在我的项目中非常完美