Doctrine 2 - ORM
  1. Doctrine 2 - ORM
  2. DDC-2767

ID property of MayToOne association has wrong type

    Details

    • Type: Bug Bug
    • Status: Open
    • Priority: Major Major
    • Resolution: Unresolved
    • Affects Version/s: None
    • Fix Version/s: None
    • Component/s: ORM
    • Security Level: All
    • Labels:
      None

      Description

      I'm seeing the following behaviour in some Doctrine code I'm writing:

      $entity = array_pop($qb->getQuery()->getResult());
      echo gettype($entity->getId()) . ' ' . $entity->getId();
      // prints: integer 123
      
      $association = $entity->getAssociation(); // unidirectional ManyToOne link to some other entity
      echo gettype($association->getId()) . ' ' . $association->getId();
      // prints: string 345
      

      When I load the associated entity directly (via find() f.x.), it's ID has the integer type as expected, and the database structure looks correct, too.

      I'm not entirely sure if this is a problem in my code or some issue in QueryBuilder or some other Doctrine component, but if someone could point me into the right direction, that would really be helpful.

      I guess normally the type of the ID is not so important because you're not supposed to access it directly anyways, but I need to provide backward compatibility for a lot of code written against a different ORM API that provided exactly this behaviour.

        Activity

        Hide
        flack added a comment -

        After some research, the problem sounds kind of similar to

        http://www.doctrine-project.org/jira/browse/DDC-2494

        only that in my case, it's not a custom type, but a builtin one that is not working. But AFAICT, in both cases it's getting the ID from a proxy that is problematic

        Show
        flack added a comment - After some research, the problem sounds kind of similar to http://www.doctrine-project.org/jira/browse/DDC-2494 only that in my case, it's not a custom type, but a builtin one that is not working. But AFAICT, in both cases it's getting the ID from a proxy that is problematic

          People

          • Assignee:
            Benjamin Eberlei
            Reporter:
            flack
          • Votes:
            0 Vote for this issue
            Watchers:
            1 Start watching this issue

            Dates

            • Created:
              Updated: