I've created a module that has its own table faces
. Also, the module setup adds a face_id
attribute sales/order to connect them:
$installer = $this;
$installer->startSetup();
$installer->run("
CREATE TABLE `{$this->getTable('faces')}` (
`face_id` int(11) NOT NULL auto_increment,
`title` varchar(255) NOT NULL,
PRIMARY KEY (`face_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8
");
if (Mage::helper('faces')->isSalesFlat()) { // 1.4
// TBD
} else { // 1.3
$eav = new Mage_Eav_Model_Entity_Setup('sales_setup');
$eav->addAttribute('order', 'face_id', array('type' => 'int'));
}
$installer->endSetup();
This is working great in my 1.3.2.4 install. But there are aspects of the relationship between order
and face
that I'd like to have. Namely, I'd like to be able to do things like this:
$face = $order->getFace(); // This method doesn't exist right now
$faceTitle = $face->getTitle();
Also, I'd like to add constraints. I would add them directly to the CREATE TABLE
SQL, but I'm wondering if they are automatically added if I use some sort of built in method for creating this relationship.