我正在使用 Tree Doctrine 扩展创建一个菜单系统,并且我想创建一个 Twig 扩展来显示基于请求的父节点的菜单,例如{% display_menu(side_menu) %}
. 此功能将在基本树枝模板中(即菜单在网站的每个页面上)。
因为我将使用 Doctrine 存储菜单结构,所以我认为我需要访问 Twig 扩展中的 MenuRepository,所以我遇到的第一个问题是将实体管理器放入其中。在寻找解决方案时,一些 人说这是不好的做法,这是有道理的,因为 Twig 扩展是 View 的一部分。
因此,尽管我的问题有一个解决方案(在类似问题中链接),但我的问题是,有没有一种方法可以使用良好的实践来完成它?或者一开始有没有更好的方法?