Using Zend_Db and multiple tables

Posted by Yacoby on Stack Overflow See other posts from Stack Overflow or by Yacoby
Published on 2010-05-29T15:32:25Z Indexed on 2010/05/29 16:12 UTC
Read the original article Hit count: 161

Filed under:
|
|
|

I have a normalized database that stores locations of files on the internet. A file may have multiple locations spread across different sites. I am storing the urls in two parts (Site.UrlStart, FileLocation.UrlEnd). The UrlEnd is the part unique to that file (for the site).

Simplified Db structure:

I am using Zend_Db as my ORM (If it is that), with classes for the tables inheriting from Zend_Db_Table_Abstract.

The issue is that retrieving the location data (e.g. the url) requires the use of multiple tables and as far as I can make out and I would either have to use both table classes (thereby exposing my table structure) or scatter sql all over my application, neither of which sound appealing.

The only solution I can see is to create a façade that acts like Zend_Db_Table_Abstract (Maybe inherits from it?) and hides the fact that the data is actually on two tables.

My questions are as follows:

  • Am I going in the right direction in creating a façade class (Are there other alternatives)?
  • Should the facade class inherit from Zend_Db_Table_Abstract?

© Stack Overflow or respective owner

Related posts about php

Related posts about oop