生成捆绑包时,TitleCase名称是否有效?例如,使用Acme\TitleCaseBundle
Symfony2将自动假设路由以acme_title_case
为前缀,服务为acme_title_case.example:
,在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", ...
答案 0 :(得分:0)
这是一个有效的名称,但是每个单词都以大写字母开头,你告诉symfony这是一个单独的单词,所以TitleCase是Title Case,它应该被命名为TitlecaseBundle。
答案 1 :(得分:0)
感谢a post by Matthias Noback,解决方法是覆盖getAlias()
方法并返回您喜欢的任何内容。
<?php
namespace Acme\TitleCaseBundle\DependencyInjection;
// ...
class AcmeTitleCaseExtension extends Extension
{
// ...
public function getAlias()
{
return 'acme_titlecase';
}
}