我正在尝试使用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
{
...
答案 0 :(得分:0)
对于它的价值,我的“修复”是从不同的包中克隆服务,然后使用该类。
这并没有真正回答我提出的“为什么”的问题,但也许它会帮助某人。