【问题标题】:Unable to find template - moved Resources from AppBundle to app folder找不到模板 - 将资源从 AppBundle 移动到应用文件夹
【发布时间】:2015-06-03 23:07:34
【问题描述】:

我将 Resources/twig 模板从 AppBundle 移动到了 app 文件夹,现在我得到了:

Unable to find template "ItemBundle:Category:index.html.twig".

我已经在控制器的注释中更改了路由,但是我在哪里可以更改 index.html.twig 的默认行为,因为总是想查看 Bundle,但现在没有 Bundle,它只是应用程序文件夹。

/**
     * Lists all Category entities.
     *
     * @Route("/", name="category")
     * @Method("GET")
     * @Template(":Category:index.html.twig")
     */

我不想更改所有 @Template - 请解释一下,所有内容现在都在 app 文件夹下,而不是正常的 CRUD 方式。对于普通的 CRUD 方式,我不需要写下每个 @Template 在哪里可以找到树枝模板。

【问题讨论】:

  • 你真的搬过它吗?你不应该移动供应商包中的任何东西,只能复制。修复很简单,只需composer update
  • 我没有搬入 vendor,这是我自己的 Bundle。
  • 你的模板路径是什么(从app开始)?如果您尝试覆盖它,它应该类似于 app/Resources/ItemBundle/Category/index.html.twig
  • 我已经在 Controller 中覆盖了它,但是对于全局,Symfony 总是关注 AppBundle。所以当我打开 /category 时,我得到了这个错误,因为他正在查看 AppBundle。
  • 如果您尝试直接链接到它而不是覆盖它,请使用::index.html.twig。请参阅doc 了解更多信息。

标签: symfony


【解决方案1】:

我认为您误解了这些模板引用的解析方式。 Here's the relevant documentation

当你使用 ItemBundle:Category:index.html.twig 之类的东西时,这意味着 Symfony 将尝试在两个地方找到该模板,按照这个顺序

  1. app/Resources/ItemBundle/views/Category/index.html.twig
  2. src/ItemBundle/Resources/views/Category/index.html.twig

所以这将取决于您将它们移动到的位置。例如,假设您将这个 twig 文件移动到 app/Resources/views/Category/index.html.twig。请注意这与上面的 #1 有何不同 - 模板不再位于 bundle 目录中 - 只是根视图目录的子目录。

因此,正确的引用是::Category/index.html.twig

【讨论】:

  • 感谢您的帮助!真的很抱歉,这根本不是我问题的答案。这不是要从树枝文件链接到另一个树枝文件。这是关于控制器的:* @Template(":Category:index.html.twig") 是正确的,但这只是第一步,并没有解决我的问题。
  • 你能告诉我你把树枝文件移到哪里了吗?完整路径是什么?
  • 我的他只在看src/ItemBundle/Resources/views/Category/index.html.twig - 在这里什么都找不到并抛出无法找到模板。 @Peter Bailey:完整路径是:app/Resources/views/Category/
  • 那你放错地方了。如果您希望:Category:index.html.twig 仍然有效,则需要将文件移动到app/Resources/ItemBundle/views/Category
  • 对不起,我的问题中有一个错误 ItemBundle 是错误的名称,它是 CheckoutItemBundleCheckoutItemBundle 它只是短名称。我的文件夹结构是src/Checkout/Bundle/ItemBundle/Resources/views/Category - 尝试在app/Checkout/Bundle/ItemBundle/Resources/views/Category 中更改它仍然无法正常工作...
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-03-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多