Skip to content

How do you migrate from doctrine-orm-module 1 to 4, wrt. annotations? #716

@jarrettj

Description

@jarrettj

Hey,

Good day.

We currently having issues with the doctrine EntityBasedFormBuilder. This is our current setup:

<?php
namespace Application\Annotation;

use Doctrine\Laminas\Hydrator\DoctrineObject;
use Doctrine\ORM\EntityManager;
use DoctrineORMModule\Form\Annotation\EntityBasedFormBuilder;
use Laminas\Code\Annotation\Parser\DoctrineAnnotationParser;
use Laminas\Code\Annotation\AnnotationManager;

class Builder
{
    private $customAnnotations = array(
        'Guid',
        ...
    )
    protected $entityManager;

    ...
    public function createForm($entity)
    {
        $builder = new EntityBasedFormBuilder($this->entityManager);
        $form = $builder->createForm($entity);

        $hydrator = new DoctrineObject($this->entityManager, true);
        $form->setHydrator($hydrator);

        return $form;
    }

The bits I am not sure of is why my ‘id’ no longer works for an existing entity? I get the following message:

Additional information:
Laminas\Form\Exception\InvalidElementException
File:
/var/www/html/vendor/laminas/laminas-form/src/Fieldset.php                    :207
Message:
No element by the name of [id] found in form
Stack trace:
#0 /var/www/html/module/Litigation/view/litigation/matter/add.phtml(83): Laminas\Form\Fieldset->get('id')
#1 /var/www/html/vendor/laminas/laminas-view/src/Renderer/PhpRenderer.php(519): include('/var/www/html/m...')
#2 /var/www/html/vendor/laminas/laminas-view/src/View.php(194): Laminas\View\Renderer\PhpRenderer->render(NULL)
#3 /var/www/html/vendor/laminas/laminas-view/src/View.php(222): Laminas\View\View->render(Object(Laminas\View\Model\ViewModel))
#4 /var/www/html/vendor/laminas/laminas-view/src/View.php(187): Laminas\View\View->renderChildren(Object(Laminas\View\Model\ViewModel))
#5 /var/www/html/vendor/laminas/laminas-mvc/src/View/Http/DefaultRenderingStrategy.php(98): Laminas\View\View->render(Object(Laminas\View\Model\ViewModel))
#6 /var/www/html/vendor/laminas/laminas-eventmanager/src/EventManager.php(319): Laminas\Mvc\View\Http\DefaultRenderingStrategy->render(Object(Laminas\Mvc\MvcEvent))
#7 /var/www/html/vendor/laminas/laminas-eventmanager/src/EventManager.php(171): Laminas\EventManager\EventManager->triggerListeners(Object(Laminas\Mvc\MvcEvent))
#8 /var/www/html/vendor/laminas/laminas-mvc/src/Application.php(360): Laminas\EventManager\EventManager->triggerEvent(Object(Laminas\Mvc\MvcEvent))
#9 /var/www/html/vendor/laminas/laminas-mvc/src/Application.php(341): Laminas\Mvc\Application->completeRequest(Object(Laminas\Mvc\MvcEvent))
#10 /var/www/html/public/index.php(31): Laminas\Mvc\Application->run()
#11 {main}

composer.json

        ....
        "doctrine/annotations": "^1.13",
        "doctrine/doctrine-orm-module": "^4.1",
        "doctrine/migrations": "^3.3",
        "doctrine/orm": "^2.10",
        "gedmo/doctrine-extensions": "^3.4",
        ....

Any help would be much appreciated. Thanks.

Regards,
Jarrett

Metadata

Metadata

Assignees

No one assigned

    Labels

    QuestionFurther information is requested

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions