0

问题:

每当我尝试访问应用程序时,都会收到此错误:

ContextErrorException:可捕获的致命错误:传递给 PL\OrderBundle\Entity\OrderHasComment::__construct() 的参数 1 必须实现接口 Symfony\Component\Security\Core\SecurityContextInterface,未给出,在 /var/www/html/apps/portal_de_logistica 中调用/vendor/sonata-project/doctrine-orm-admin-bundle/Model/ModelManager.php 在第 416 行并在 /var/www/html/apps/portal_de_logistica/src/PL/OrderBundle/Entity/OrderHasComment.php 第 48 行定义

我做错了什么?

4

1 回答 1

3

PL\OrderBundle\Entity\OrderHasComment的构造函数要求一个强制参数,但在创建对象的新实例时不提供它。

您正在创建一个新的 OrderHasComment(无论是什么),如下所示:

$object = new OrderHasComment() // <- missing argument 

删除它 - 一旦你的听众调用类似的东西setContext(...)并且不需要创建对象......所以它不应该是强制性的。

// remove the mandatory argument or provide a default (i.e. $context = null)
public function __construct(ContextInterface $context) /
{
    // ...

...应该变成:

public function __construct()
{

这解决了导致异常的问题。

于 2014-03-02T13:28:17.070 回答