我已经创建了一个独立的Symfony包,现在可以在不设置Symfony的情况下单独运行包吗?
我已经执行了单元测试,现在可以在浏览器中运行捆绑包的控制器了(可能吗?)
提前感谢!
发布于 2015-03-09 15:34:53
Bundle是Symfony特定的,它只在Symfony上下文中有意义。
当在Symfony项目中不安装包的情况下调用包控制器可能有用时,我能想到的唯一上下文是测试。如果这就是您想要的,那么可以设置一个精简的Symfony内核来进行测试。请参阅我关于这个主题的文章:How to run Behat scenarios and functional tests from a Symfony bundle in isolation of a project
我还实现了一个DemoBundle,您可以在其中看到它与phpunit和Behat测试一起工作。
如果您只是需要在浏览器中手动测试捆绑包,但您并不真正想要安装整个框架,则可以采用相同的方法。
底线是你至少需要设置一个最小的Symfony内核。
发布于 2015-03-09 15:16:48
你不能在Symfony上下文中使用包,而不让Symfony知道它已经“安装”了。为此,您必须在AppKernel中启用捆绑包
// app/AppKernel.php
// ...
class AppKernel extends Kernel
{
// ...
public function registerBundles()
{
$bundles = array(
// ...,
new FOS\UserBundle\FOSUserBundle(),
);
// ...
}
}https://stackoverflow.com/questions/28935067
复制相似问题