Symfony 3 easyadmin __toString () не должен вызывать исключение

Я использую EasyAdmin Bundle. Когда я пытаюсь добавить новый элемент в сущности с именем «Company», который имеет отношение «ManyToMany» с сущностью «Service», я получаю сообщение об ошибке:

Error: Method AppBundle\Entity\Service::__toString() must not throw an exception

Но когда я собираюсь добавить новый элемент в сущность «Сервис», все работает нормально, и поле с сущностями «Компания» отображается правильно.

Я пытался поймать реализацию исключения этот Обходной путь, но он не вступает в силу.

Класс обслуживания:

namespace AppBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections;
use Doctrine\Common\Collections\ArrayCollection;

/**
* Company
*
* @ORM\Table(name="company")
* @ORM\Entity(repositoryClass="AppBundle\Repository\CompanyRepository")
*/
class Company
{

/**
* @var
*
* Many Companys have Many Services.
* @ORM\ManyToMany(targetEntity="Service", inversedBy="companys")
* @ORM\JoinTable(name="companys_services")
*/
private $services;

public function __construct() {
$this->services = new ArrayCollection();
}
public function __toString()
{
return $this->name;
}
}

И класс обслуживания:

namespace AppBundle\Entity;

use Doctrine\ORM\Mapping as ORM;
use Doctrine\Common\Collections;
use Doctrine\Common\Collections\ArrayCollection;

/**
* Service
*
* @ORM\Table(name="service")
* @ORM\Entity(repositoryClass="AppBundle\Repository\ServiceRepository")
*/
class Service
{
/**
* Many Services have Many Companys.
* @ORM\ManyToMany(targetEntity="Company", mappedBy="services")
*/
private $companys;

public function __construct()
{
$this->companys = new ArrayCollection();
}

public function __toString()
{
return (string) $this->name;
}
}

Что случилось?

1

Решение

Сообщение об ошибке настолько специфично (Service::__toString() must not throw an exception) что проблема должна быть в $this->name собственностью Service, Это определено? Является ли «нормальным» свойством или каким-либо дополнительным объектом, который не может быть преобразован в строку?

0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]