gpt4 book ai didi

path - Silex Controller 提供程序的替代 Twig 路径

转载 作者:行者123 更新时间:2023-12-05 01:17:15 25 4
gpt4 key购买 nike

我正在创建一个新的 Controller 提供程序,我将在多个项目中使用该提供程序,并且我需要在此 Controller 提供程序的目录中拥有几个 twig 模板,以便在该提供程序的某些路由中使用。我想避免将所有模板文件复制到每个将使用此 Controller 提供程序的项目的项目目录中(将它放在 twig.path 指定目录下),所以我的问题是:

如何渲染不在 twig.path 下的模板目录?我可以告诉 Twig 服务提供者渲染一个特定的路径,比如 __DIR__.'/views/some.template.twig'在 Controller 提供程序文件中?

最佳答案

您可以使用 $app['twig.loader.filesystem'] 访问 twig loader。

例如,把它放在你的 Controller 类中的连接方法中

$app['twig.loader.filesystem']->addPath(
$pathToTemplates
);

也存在 Twig_Loader_Filesystem::prependPath()

您还可以为路径指定命名空间。为此,只需添加命名空间的名称作为第二个参数,例如,'NAMESPACE'。在这种情况下,您可以通过 $app['twig']->render('@NAMESPACE/pathToATemplate'); 访问您的模板。渲染它时,请在命名空间之前注意 @-char。

关于path - Silex Controller 提供程序的替代 Twig 路径,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13449825/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com