Data Objects vs Custom Doctrine Classes


Hi i am new to PimCore, but developed with Symfony now for many years.

What is the benefit if i use Data Objects over plain Doctrine Model Classes?

In my understanding it is:

  • User interface is automatically generated via Pimcore
  • Can be assigned to Documents via Pimcore
  • Caching via Pimcore

Can i still use the Pimcore UI to allow the user to create objects from Doctrine Models or is it quite complex to achieve that?

It is because i am not sure if i should “entangle” my business models so closely with a 3rd party library.

Best regards Sebastian



you can use whatever suites you better. The advantage of Pimcore Objects are:

  • Easily extendable
  • Configurable using Bricks/Field Collections and Classification Stores
  • Relations to other things in Pimcore

Whereas there are also use-cases where I think that Pimcore Objects are bloated. Like Countries/Currencies and stuff like that.

You can also use Doctrine ORM in Pimcore, take a look at CoreShop how that can look like.



Hey Dominik, thank you for the fast reply.

I already looked into the CoreShop project, quite a complex piece you got there ;).

Just a question, Pimcore objects also provide a “Use (traits)” field, why didn’t you use it for example for the name property of your classes? Because of backward compatibility for older Pimcore versions?




I don’t like to use traits for Data Objects. I never used that. I always just use Parent Classes, and that solves basically everything.



Would it be possible if we could telephone and talk about problems you have overcome and some best practices?
I am also from Austria and i think that could help me create a good foundation for our project at work.



Ok, I am pretty sure you know where to find my number, just give me a call.