Sonata Block Bundle无法找到我的新班级

时间:2018-03-21 11:51:26

标签: php symfony sonata-admin

我正在尝试使用Sonata Block Bundle创建一个新的块服务。它在Symfony 3.3上运行。

我已将现有的TextBlockService.php文件克隆到名为CenteredOverlineBlockService.php的新文件中。这两个文件都位于src/AppBundle/Resources/config/目录中。

我已将以下文字添加到我的blocks.yml文件中:

vgms.block.centeredoverline:
    class: AppBundle\Block\CenteredOverlineBlockService
    arguments:
        - "Centered Overline"
        - "@templating"
        - "@sonata.media.manager.media"
        - "@sonata.admin.pool"
    tags:
        - { name: sonata.block }

...我在sonata_block.yml中添加了以下参考:

    vgms.block.centeredoverline:

...我现在收到以下错误:

  

尝试从命名空间加载类“CenteredOverlineBlockService”   “的appbundle \块”。你忘记了另一个人的“使用”陈述吗?   命名空间?

所以我的问题是:我在这里错过了什么步骤?

应用程序无需投诉即可加载以前存在的TextBlockService。只有这项新服务才会产生问题。

===

编辑#1:这是所涉及的课程的顶部:

namespace AppBundle\Block;

use ...

class CenteredOverlineBlockService extends \Sonata\BlockBundle\Block\Service\TextBlockService
{
...

1 个答案:

答案 0 :(得分:0)

对于它的价值,我的“修复”是从不同的包中克隆服务,然后使用该类。

这并没有真正回答我提出的“为什么”的问题,但也许它会帮助某人。