0

生成捆绑包时,TitleCase 名称是否有效?例如,Acme\TitleCaseBundleSymfony2 会自动假设路由的前缀是acme_title_case,服务是acme_title_case.example:和 in Acme\TitleCaseBundle\DependencyInjection\Configuration,配置树的根节点是用这个方法找到的

<?php
// ...

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

它应该是acme_titlecase

尝试更正这些,然后添加acme_titlecase: ~app/config/config.yml将引发此错误

InvalidArgumentException: There is no extension able to load the configuration for 
"acme_titlecase" (in /Users/me/Sites/MySite/app/config/config.yml).
Looked for namespace "acme_titlecase", 
found "framework", "another_namespace", ... , "acme_title_case", ...
4

2 回答 2

0

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

于 2012-11-26T17:46:22.300 回答
0

感谢Matthias Noback 的帖子,解决方案是覆盖getAlias()方法并返回您喜欢的任何内容。

<?php

namespace Acme\TitleCaseBundle\DependencyInjection;

// ...

class AcmeTitleCaseExtension extends Extension
{
    // ...

    public function getAlias()
    {
        return 'acme_titlecase';
    }
}
于 2012-11-27T17:50:55.807 回答