Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/templates/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
symfony 3.2.4。。。找不到模板";OCPlatformBundle:Advert:index.html.twig_Symfony_Templates - Fatal编程技术网

symfony 3.2.4。。。找不到模板";OCPlatformBundle:Advert:index.html.twig

symfony 3.2.4。。。找不到模板";OCPlatformBundle:Advert:index.html.twig,symfony,templates,Symfony,Templates,我使用的是symfony 3.2.4(带有控制台——版本)。 我正在学习Open教室教程。 该控制器总是返回下面的错误。 尽管如此,下面的文件仍然存在,并且可以访问 src/OC/PlatformBundle/Resources/views/Advert/index.html.twig 我被它弄疯了。有人有主意吗 提前谢谢 <?php // src/OC/PlatformBundle/Controller/AdvertController.php namespace OC\Platform

我使用的是symfony 3.2.4(带有控制台——版本)。 我正在学习Open教室教程。 该控制器总是返回下面的错误。 尽管如此,下面的文件仍然存在,并且可以访问

src/OC/PlatformBundle/Resources/views/Advert/index.html.twig

我被它弄疯了。有人有主意吗

提前谢谢

<?php
// src/OC/PlatformBundle/Controller/AdvertController.php
namespace OC\PlatformBundle\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Response;
class AdvertController extends Controller
{
  public function indexAction()
  {
    $content = $this->get('templating')->render('OCPlatformBundle:Advert:index.html.twig');

    return new Response($content);
  }
}

您是否尝试在
app/Resources/views/Advert/index.html.twig
中创建模板

这是一个更好的实践:
将所有应用程序的模板存储在app/Resources/views/directory中。
(来自SF doc)

因此,您可以通过以下方式“调用”它:

/***/
public function indexAction()
{
    return $this->render('Advert/index.html.twig', []);
}
/***/

这几乎就像您的捆绑包没有在
AppKernel
中注册一样,但这没有意义,不是吗?别忘了清理缓存!(细枝必须由symfony编译成php并放入缓存)是的,bubdle已注册,控制器正在工作,而它返回的是字符串响应,而不是呈现内容。我通过控制台清理缓存(这做得很好,因为我必须替换/var/dev文件夹上的777),但这并没有任何改变/