Details
-
Type:
Improvement
-
Status:
Resolved
-
Priority:
Major
-
Resolution: Won't Fix
-
Affects Version/s: None
-
Fix Version/s: None
-
Component/s: ORM
-
Security Level: All
-
Labels:None
Description
It would be nice if a DiscriminatorMap was optional when defining Inheritance Mapping. For example, in dynamic environments where the actual classes that will extend a base class are not known, it would be much easier to have a default discriminator map created by Doctrine, which just mapped the class name to itself.
Having the DiscriminatorMap is great for some uses, but I think it should just use the classnames by default. That would mean less work for the developer and a more flexible/simpler system overall.
This is technically not possible (and wanted).
Explaination is simple:
Say i wouldnt define the Inheritance Mapping upfront and now do a query:
Since this query would hydrate ALL children of Root also. How would the code know which classes are parents? You cannot call find this out with Reflection or any other classes since you don't know for sure if the classes have been loaded using require_once yet.