Skip to content

ObjectRepository find* method does not resolve entity type since PhpStorm 2016.2#PS-162.1121.38 #764

Open
@dimarick

Description

@dimarick

This code is not works:

        $manager = $container->get('doctrine')->getManagerForClass(MyEntity::class);
        $repository = $manager->getRepository(MyEntity::class);
        $object = $repository->find($Id);
        $object->getId(); //Not resolved

Very strange, but this works:

        /** @var \Doctrine\Common\Persistence\ObjectManager|null $manager */
        $manager = $container->get('doctrine')->getManagerForClass(MyEntity::class);
        $repository = $manager->getRepository(MyEntity::class);
        $object = $repository->find($Id);
        $object->getId(); //Resolved!

Method getManagerForClass has declared return type ObjectManager|null and this type is successfully resolved by phpStorm. But plugin works only if /** @var */ present

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions