Symfony - 从 javascript(前端)和控制器(后端)访问树枝模板

Symfony - accessing twig templates both from javascript (frontend) and controllers (backend)

我使用模板的第一种方式是标准的 symfony 方式——从控制器调用:

return $this->render('MyBundle:MyController:MyTemplate.html.twig');

模板存储在Resources/views/MyController/MyTemplate.html.twig

我使用模板的第二种方式是前端。我正在使用 twig.js 并且模板存储在 Resources/public/twig 文件夹中(它们可以从 /bundles/mybundle/twig 从 js 访问)

问题。例如,我想在正面和背面使用相同的 macro。我无法从 public 模板访问 views,我也无法从存储在 views.

中的模板访问 public

目前正在使用 Ctrl+C / Ctrl+V :/

我找到了非常简单的解决方案:

config.yml

twig:
    paths:
        "%kernel.root_dir%/../src/Ida/BabolaBundle/Resources/public/twig": public

现在我可以在任何 views 模板中使用 @public/myTemplate.html.twigviews 访问 public

这里还有 PHPStorm 提示:

Settings -> Other Setting -> Symfony2 Plugin -> Twig / Template

中添加新行

public src/YourVendor/YourBundle/Resources/public/twig ADD_PATH Custom true