Proxies are a performance construct for Doctrine, not for your application. Proxies should be treated as classes that are internal to Doctrine. Your application should not care about proxies and never be dependant on them, but always talk to your entities. Use instanceof instead of get_class() to find out if your instance is of a certain class and you are safe. It is however a good idea to know how Proxies work (they subclass your entity classes), because in some cases you need to know. But in general: do not consider them in your business logic.
There is no need to have proxies committed in cvs. Just generate them once during deployment and you are fine. On Mon, Apr 13, 2015 at 12:04 PM, Marco Pivetta <[email protected]> wrote: > On 13 April 2015 at 10:55, Badr Ghatasheh <[email protected]> > wrote: > >> We're stuck in a loop :) >> >> Let me recap the use case: >> >> 1. Developer A creates a new data model [with autogeneration in place >> during development]. >> 2. Developer A finalizes their code and tests, commits their model. >> 3. A hook generates the proxies in the model. >> 4. Developer B pulls the model as a dependency in their app, when the >> proxies are requested, they're already there. >> >> In my use case, Developer B *can't* modify the model code, so it would be >> pointless to worry about caching those proxies, the cache would *never* >> change, so why generate them on the application level, what is the benefit. >> > > The loop is very simple to solve: do not commit generated artifacts to SCM. > > That is a packaging/deployment issue, not a source control issue. > > Keeping a repository of RPMs (or whatever you use as packaging format) is > not up to GIT. > > 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/d/optout. > -- 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/d/optout.
