On 26 February 2014 05:42, Roy Epperson <[email protected]> wrote:

> Thanks Marco.  Can you put proxies from each project in separate
> locations? At least my interpretation for the setProxy..... methods they
> only accept a single value for each $entityManager configuration.
>

You need one proxy location per EntityManager instance, yes. If you have
one EntityManager shared across multiple projects, then just use that one.


> Off Subject question - who causes the  namespace
> cnrepperson\authorization\proxies\__CG__\cnrepperson\authorization class
> class SecretQuestion extends \cnrepperson\authorization\SecretQuestion
> implements \Doctrine\ORM\Proxy\Proxy to get executed when flushing or
> loading the object?
>

Proxies are a mechanism used for lazy-loading objects and allowing you to
traverse your entity graph without manually accessing repositories for
every "hop":

// horrible example just to show what is going on
// this would not be possible if there weren't some "hidden" lazy-loading
mechanism in place
$user->getPosts()->first()->getComments()->last()->getAuthor()->getComments();

Proxies are usually created by the ORM when you have an ID reference to an
object, but not its data.

I wrote extensively about that at
http://ocramius.github.io/presentations/proxy-pattern-in-php/#/ if you need
to understand what this stuff is about :-)

Cheers,

Marco Pivetta

http://twitter.com/Ocramius

http://ocramius.github.com/

-- 
You received this message because you are subscribed to the Google Groups 
"doctrine-user" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/doctrine-user.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to