Может кто-нибудь объяснить мне, как исправить эту ошибку «Нет менеджер объектов не был установлен»Нет менеджер объектов не был установлен ZF2 Fieldset
Вот FIELDSET:
namespace Trunk\Form;
use Trunk\Entity\Category;
use Doctrine\Common\Persistence\ObjectManager;
use DoctrineModule\Stdlib\Hydrator\DoctrineObject as DoctrineHydrator;
use Zend\Form\Fieldset;
use Zend\InputFilter\InputFilterProviderInterface;
class CategoryFieldset extends Fieldset implements InputFilterProviderInterface
{
public function __construct($objectManager)
{
parent::__construct('category');
$this->setHydrator(new DoctrineHydrator($objectManager, 'Trunk\Entity\Category'));
$this->add(array(
'type' => 'DoctrineORMModule\Form\Element\DoctrineEntity',
'name' => 'title',
'object_manager' => $objectManager,
'target_class' => 'Trunk\Entity\Category',
'property' => 'title',
'is_method' => false,
'find_method' => array(
'name' => 'findBy',
'params' => array(
'criteria' => array('parentid' => 0),
'orderBy' => array('title' => 'ASC'),
),
)
));
}
}
Вот сообщение об ошибке:
F: \ XAMPP \ HTDOCS \ travelltheworld \ поставщик \ доктрина \ доктрина-модуль \ SRC \ DoctrineModule \ Form \ Элемент \ Proxy.php: 535
Нет диспетчер объектов был установлен
Я ввел менеджера объектов на заводе в свою форму, которая называется ProductForm. Внутри этой формы у меня есть базовый набор полей под названием ProductFieldset, а внутри ProductFieldset я вставил CategoryFieldset, где мне нужно выбрать категории из базы данных и отобразить их в поле выбора.
Если вам нужно больше кода или объяснений, пожалуйста, спросите меня.
Прежде всего, я хотел бы сказать извините за поздний ответ и спасибо @ Хоули. Ваш ответ правильный! Вместо конструкторов я использую инициализаторы в форме и в полях. Вместо черты я использую intereface ObjectManagerAwareInterface. Я следил за объяснением https://github.com/doctrine/DoctrineModule/issues/175 – Sezgin