我有服务。
manager.summary.order:
class: Travelyo\CoreBundle\Services\Managers\Order\OrderSummaryManager
arguments:
template: '@templating'
router: '@router'
该渲染 html(使用 twig)稍后将通过邮件发送或显示。
在我的 Symfony2.1 项目中使用此服务时,我没有任何问题。在这个树枝中,我有不同的调用,例如app.request.locale
& number_format_currency
。
在我的测试控制器中调用此服务时。
我得到那个错误
Twig_Error_Runtime: An exception has been thrown during the rendering of a
template ("You cannot create a service ("request") of an inactive scope
("request").") in "TravelyoCoreBundle:Mail:confirmation_mail.html.twig" at line 63.
这是我的控制器。
namespace Travelyo\ConfigurationBundle\Tests\Order;
use Travelyo\CoreBundle\Event\Order\OrderEvent;
use Travelyo\CoreBundle\Entity\Order\Order;
use Symfony\Component\EventDispatcher\EventDispatcher;
use Travelyo\CoreBundle\Session\EtSession;
use Travelyo\CoreBundle\Services\Managers\OrderProcessManager;
use Symfony\Bundle\FrameworkBundle\Test\WebTestCase;
class OrderSaveToDbTest extends WebTestCase {
private $summaryManger;
public function setUp()
{
static::$kernel = static::createKernel();
static::$kernel->boot();
$client = static::createClient();
$client->request(
'GET', '/clients/123456',
array('SERVER_NAME' => 'travelyo'), /* request params */
array(), /* files */
array('X-Requested-With' => "XMLHttpRequest",'SERVER_NAME' => 'travelyo'));
$this->summaryManger = static::$kernel->getContainer()->get('manager.summary.order');
}
public function testSaveAndSend()
{
$this->summaryManger->generateHml();
}
}
知道如何不出现此错误吗?
我尝试将 scope=request 添加到我的服务中。但是此服务被我的应用程序中的其他服务使用
谢谢