如何在Symfony 2中没有捆绑名称?

时间:2013-01-29 19:11:13

标签: symfony bundle symfony-2.1

有没有办法在系统的各个部分中没有包名称作为View或Routing?

例如,我想改为使用:

{% extends "SomeAppBundle::layout.html.twig" %}

使用此:

{% extends "layout.html.twig" %}

或者:

    $router->add('index', new Route('/', array(
         '_controller' => 'SomeAppBundle:Default:index',
    )));

替换:

    $router->add('index', new Route('/', array(
         '_controller' => 'Default:index',
    )));

我没有完全理解捆绑的强制性,但我认为对于单捆绑应用程序来说这种方法更为明显。如果我在这个包的空间中,为什么要指定包名?

1 个答案:

答案 0 :(得分:1)

symfony docs说:

  

在开始之前,您需要创建一个包。在Symfony2中,a   bundle就像一个插件,除了你的所有代码   应用程序将存在于捆绑包中。

如果你真的只有一个捆绑的罕见情况,你可能会认为这是开销。但即便如此,也有优势:

  • 无论是一个还是10个捆绑包
  • ,您的应用程序看起来都是一样的
  • 如果您需要另一个捆绑包,则无需更改所有内容(“哦,我们可能需要后端”)。
  • 核心不需要处理不同的案例

我建议你使用框架,创建一个捆绑包,即使它是唯一的一个。一旦你创造它就不会真正感受到它,它会使事情变得如此简单。