Uploaded image for project: 'Doctrine 2 - ORM'
  1. Doctrine 2 - ORM
  2. DDC-2148

Many-to-many not working with interface


    • Type: Bug
    • Status: Resolved
    • Priority: Major
    • Resolution: Fixed
    • Affects Version/s: 2.3
    • Fix Version/s: 2.2
    • Component/s: DQL
    • Labels:
    • Environment:
      Linux, PHP 5.3.10, Symfony 2.2


      First off, here's a pastie with all the code and mappings involved, and a stacktrace: http://pastie.org/5372087

      Not sure if this a bug or not, but I think that according to the docs this should work - in a vendor bundle I have an entity defining a unidirectional many-to-many relation to an interface: the entity is Group and defines a many-to-many relation to a UserInterface, which is resolved correctly in the app configuration (as the many-to-one relations using it in the other entities of this vendor bundle work fine).

      I'm going by these docs:


      However, when adding a user to a group, I'm getting a weird error:

      An exception occurred while executing 'INSERT INTO acme_group_user (group_id, user_id) VALUES (?, ?)' with params



      SQLSTATE[HY093]: Invalid parameter number: number of bound variables does not match number of tokens

      For some reason it's adding 4 parameters to the statement instead of 2.

      Oddly enough, the query generation works perfectly fine when I replace the interface in the mapping with the actual final entity. But that wasn't the point of the exercise... I need to use the interface there.

      Also, in other entities in that GroupBundle which are referencing the UserInterface using a different relation type, i.e. many-to-one, the relations work perfectly fine.

      The schema validates as well, using doctrine:schema:validate in the console.



          • Assignee:
            beberlei Benjamin Eberlei
            userfriendly Moritz Kraft
          • Votes:
            0 Vote for this issue
            2 Start watching this issue


            • Created: