mirror of
https://github.com/doctrine/orm.git
synced 2026-03-23 22:42:18 +01:00
DDC-1150: BasicEntityPersister::expandParameters does not check assiciation mapping when expanding parameters #1445
Reference in New Issue
Block a user
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @doctrinebot on GitHub (May 13, 2011).
Originally assigned to: @guilhermeblanco on GitHub.
Jira issue originally created by user realmfoo:
If you try to find entities, filtering them by field with association mapping (ManyToOne) and use an array as a filter argument it will not work:
I fixed method BasicEntityPersister::expandParameters:
@doctrinebot commented on GitHub (Jun 5, 2011):
Comment created by @beberlei:
What is $this->_class->associationMappings[$field]['type'] supposed to be? This key does not exist
@doctrinebot commented on GitHub (Jun 5, 2011):
Comment created by realmfoo:
The key exists when ToMany association is used. $field['type'] is a real Doctrine's type of the field, because fieldMappings contains entity type of association.
Checking of this key in Doctrine itself:
https://github.com/doctrine/doctrine2/blob/master/lib/Doctrine/ORM/Mapping/ClassMetadataFactory.php#L386
@doctrinebot commented on GitHub (Jun 11, 2011):
Comment created by @beberlei:
Yes buts its the type of the association, MANY_TO_ONE ,ONE_TO_MANY, etc, etc..The type of the associated column is not really known.
@doctrinebot commented on GitHub (Jun 14, 2011):
Comment created by realmfoo:
Heh, I was lucky, thanks for pointing it out :)
In any case we still can find this type by the target class. May be it will be a good to cache it in the associationMappings array (by functions like _validateAndCompleteOneToOneMapping)?
@doctrinebot commented on GitHub (Jun 14, 2011):
Comment created by @beberlei:
At that point you still don't have the information since its saved on the related association and we don't access it at this point (otherwise you get a riffling effect and everything is in memory). We could just assume it is PDO::PARAM_STR.
@doctrinebot commented on GitHub (Aug 14, 2011):
Comment created by @guilhermeblanco:
This issue was fixed in
63a2f02f4dThanks for the report and attempting to fix the issue. =)
@doctrinebot commented on GitHub (Aug 14, 2011):
Issue was closed with resolution "Fixed"