mirror of
https://github.com/doctrine/orm.git
synced 2026-03-23 22:42:18 +01:00
DDC-774: Getting the primary key of a reference fetches the object from database #955
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 (Aug 27, 2010).
Jira issue originally created by user arnaud-lb:
When creating a reference (i.e.
$ref = $em->getReference('\Foo', 1);), getting the value of the primary key (i.e.$ref->getId();) fetches the object from the database.My understanding ot Doctrine is that the references are proxies to real objects, and that calling any method on them will trigger a fetch from the database, which makes sense.
May be this could be improved so that proxies have a check like
if (I*am_a_reference() and this_is_a_pkey_getter()) return $pkey). This_is_a_pkey*getter() could get its knowledge from some @PrimaryKeyGetter entity annotation.The references could then be used in place of the PartialReferences, without the huge WTF-factor of partial references and partial objects.