我正在尝试编写一个包来管理 Symfony 4 中跨多个应用程序开发的常用功能。
我创建了一个新的空白应用程序和新的空白捆绑包,我逐渐向其中添加了功能。为了同时获得注释路由和树枝模板路径,我必须将详细信息添加到 App 配置的路径中,以使捆绑包正常工作。这对我来说似乎很奇怪,因为我希望捆绑配置是自包含的,放置适当的钩子供应用程序抓取和使用。
我在 config/route/hillrange_admin.yaml 的 App 中添加了一个路由文件
hillrange_admin:
resource: '@HillrangeAdminBundle/Controller/'
type: annotation
prefix: /hillrange/admin/
我在应用程序中更改的另一个文件是 config/packages/twig.yaml 中的树枝模板路径
twig:
default_path: '%kernel.project_dir%/templates'
paths:
'%kernel.project_dir%/templates/bundles/HillrangeAdmin': hillrange_admin
'%kernel.project_dir%/vendor/hillrange/admin/Resources/views': hillrange_admin
debug: '%kernel.debug%'
strict_variables: '%kernel.debug%'
这是我可以在https://symfony.com/doc/current/templating/overriding.html中讨论的那样覆盖模板的唯一方法。本文未提及使系统正常工作所需的任何设置。
所以我的问题是:我缺少什么我需要向应用程序添加配置以使捆绑包工作。我已经阅读了很多文档,但到目前为止,我还没有找到使这一切都像我期望的那样工作的信息?
捆绑包结构遵循https://symfony.com/doc/current/bundles/best_practices.html ,应用程序遵循https://symfony.com/doc/current/best_practices/creating-the-project.html中提到的结构
感谢您的任何想法。
克雷格