首页 文章

找不到模板树枝路径

提问于
浏览
0

我有一个问题,我怎么能正确指定PHP中的函数内的twig模板?我有以下结构:

src
  User
     EmailBundle
           DependencyInjection
           Resources
                views
                    Default
                        email-base.html.twig
           Services

我正在尝试的是:

$template = $this->emailService->getTemplate(
        'UserEmailBundle:Default/email-base.html.twig'
)

并且无法正常工作,它会显示无法找到模板的错误 . 我究竟做错了什么?谢谢

2 回答

  • 1

    您的捆绑包是EmailBundle而不是UserEmailBundle,因此请尝试更改: UserEmailBundle:Default/email-base.html.twigEmailBundle:Default/email-base.html.twig

    再看一遍这个问题,也许我错了,你试过了吗?

    UserEmailBundle:Default:email-base.html.twig

  • 2

    @Email/Default/email-base.html.twig 有效,或者 EmailBundle:Default:email-base.html.twig .

    假设这个设置:

    src
        User
            EmailBundle
                EmailBundle.php
                Resources
                    views
                        Default
                            email-base.html.twig
    

    检查你的composer.json,它应该是这样的:

    // ...
    
    "autoload": {
        "psr-4": {
            "AppBundle\\": "src/AppBundle", "User\\": "src/User"
        },
        "classmap": [ "app/AppKernel.php", "app/AppCache.php" ]
    },
    
    // ...
    

    还要确认您已在AppKernel.php中注册了捆绑包:

    // ...
    $bundles = [
        // ...
        new \User\EmailBundle\EmailBundle(),
        new AppBundle\AppBundle(),
    ];
    // ...
    

相关问题