Bundle name中的Symfony2 TitleCase产生名称空间错误和Bundle配置

Bundle name中的Symfony2 TitleCase产生名称空间错误和Bundle配置,symfony,dependency-injection,namespaces,symfony-2.1,Symfony,Dependency Injection,Namespaces,Symfony 2.1,生成捆绑包时,标题库名称是否有效?例如,对于Acme\TitleCaseBundleSymfony2将自动假定路由前缀为Acme\u title\u case,服务是Acme\TitleCaseBundle\DependencyInjection\Configuration。例如:和Acme\TitleCaseBundle\DependencyInjection\Configuration,使用此方法找到配置树的根节点 <?php // ... public function getCo

生成捆绑包时,标题库名称是否有效?例如,对于
Acme\TitleCaseBundle
Symfony2将自动假定路由前缀为
Acme\u title\u case
,服务是
Acme\TitleCaseBundle\DependencyInjection\Configuration。例如:
Acme\TitleCaseBundle\DependencyInjection\Configuration
,使用此方法找到配置树的根节点

<?php
// ...

public function getConfigTreeBuilder()
{
    $treeBuilder = new TreeBuilder();
    $rootNode = $treeBuilder->root('acme_title_case');
    // ...
}

它是一个有效的名称,但是让每个单词都以大写字母开头,告诉symfony这是一个单独的单词,因此TitleCase是Title大小写,它应该命名为TitlecaseBundle。

由于,解决方案是重写
getAlias()
方法并返回您喜欢的任何内容

<?php

namespace Acme\TitleCaseBundle\DependencyInjection;

// ...

class AcmeTitleCaseExtension extends Extension
{
    // ...

    public function getAlias()
    {
        return 'acme_titlecase';
    }
}

<?php

namespace Acme\TitleCaseBundle\DependencyInjection;

// ...

class AcmeTitleCaseExtension extends Extension
{
    // ...

    public function getAlias()
    {
        return 'acme_titlecase';
    }
}