web-dev-qa-db-ja.com

Symfony 3でテンプレートが見つかりません

私はそのようなテーマがたくさんあることを知っていますが、解決策が見つかりませんでした

この問題があります

テンプレート「CoreBundle:index.html.twig」が見つかりません(/ var/www/html/MyProject/vendor/symfony/symfony/src/Symfony/Bridge/Twig/Resources/views/Formを参照)。

これがアーキテクチャです enter image description here これは私のコントローラーです

<?php

namespace CoreBundle\Controller;

use Symfony\Bundle\FrameworkBundle\Controller\Controller;
use Symfony\Component\HttpFoundation\Request;
use Sensio\Bundle\FrameworkExtraBundle\Configuration\Route;

class DefaultController extends Controller
{
    /**
     * @Route("/", name="index")
     */
    public function indexAction(Request $request)
    {
        return $this->render('CoreBundle:index.html.twig');
    }

    /**
     * @Route("/ma-personnalite", name="ma-personnalite")
     */
    public function mapersonnaliteAction(Request $request)
    {
        return $this->render('CoreBundle:ma_personnalite.html.twig');
    }

    /**
     * @Route("/cv", name="cv")
     */
    public function cvAction(Request $request)
    {
        return $this->render('CoreBundle:cv.html.twig');
    }

    /**
     * @Route("/scolaires", name="scolaires")
     */
    public function scolairesAction(Request $request)
    {
        return $this->render('CoreBundle:scolaires.html.twig');
    }

    /**
     * @Route("/extra-scolaires", name="extra-scolaires")
     */
    public function extrascolairesAction(Request $request)
    {
        return $this->render('CoreBundle:extra_scolaires.html.twig');
    }

    /**
     * @Route("/contact", name="contact")
     */
    public function contactAction(Request $request)
    {
        return $this->render('CoreBundle:contact.html.twig');
    }
}

これはconfig.ymlです

#app/config/routing.yml
core:
    resource: "@CoreBundle/Controller/"
    type:     annotation
    prefix:   /

御時間ありがとうございます

6
N.Jourdan

Symfony 3 Docs によれば、スラッシュを使用し、「バンドル」Wordを使用しない方が良いとされています。

そのため、例として次のものがあります。

return $this->render('@BloggerBlog/Default/index.html.twig');
15
Deadpool

これを変更してみてください:

return $this->render('CoreBundle:index.html.twig');

これに:

return $this->render('CoreBundle::index.html.twig');

違いは、::の代わりに:を使用することです

これは私の場合に役立ちました:@Core/index.html.twig

1