News Feed
Jobs Feed
Sections




News Archive
Looking for more information on how to do PHP the right way? Check out PHP: The Right Way

Liip Blog:
Table Inheritance with Doctrine
March 28, 2012 @ 09:30:09

On the Liip blog there's a recent post looking at table inheritance with Doctrine, the popular PHP ORM tool. In the post, Daniel Barsotti talks about a database model that needed some updating due to their searching needs.

Our first idea, and it was not that bad, Drupal does just the same, was to have a database table with the common fields, a field containing the type of item (it's either an event or a blog post) and a data field where we serialized the corresponding PHP object. This approach was ok until we had to filter or search LabLog items based on fields that were contained in the serialized data.

To resolve the issue they turned to multiple table inheritance, relating the LabLogItem to both a BlogPost and Event. They also show how it could be modeled with a single table, but opt for the multiple method. Included in the post is the Doctrine-based code showing how to create the parent entity for the LabLogItem and the two child entities for the blog post and event. There's also a brief snippet showing how to use them with the EntityManager.

0 comments voice your opinion now!
table inheritance doctrine orm tutorial multiple


blog comments powered by Disqus

Similar Posts

Zend Developer Zone: Using Zend_Feed to Merge Multiple RSS Feeds

DevShed: Building File Uploaders with PHP 5

NetTuts.com: How to Write Testable and Maintainable Code in PHP

HowToForge.com: Installing Cherokee With PHP5 And MySQL Support On Ubuntu 11.04

DevShed: Working with MySQL Result Sets and the Decorator Pattern in PHP


Community Events











Don't see your event here?
Let us know!


hack language security hhvm composer performance facebook application component introduction series install podcast symfony2 release framework code package unittest opinion

All content copyright, 2014 PHPDeveloper.org :: info@phpdeveloper.org - Powered by the Solar PHP Framework