What is Object Relational Mapping (ORM) php and magento
ORM stands for Object Relational
Mapping. It’s a programming technique used to convert different types of
data to Objects and vice versa.
In Magento, ORM is shown as Model (based on Zend Framework’s Zend_Db_Adapter), which further breaks down to two types of Models.
First is the “simple” i.e. Regular Models which is nothing but flat table or our regular table structure.
Second Model is EAV (Entity Attribute Value), which is quite complicated and expensive to query.
All Magento Models interacting with database are inherited from
Mage_Core_Model_Abstract class, which is further inherited from
Varien_Object.
Difference between two Models is, Simple Model is inherited from Mage_Core_Model_Resource_Db_Abstract class,
while EAV is inherited from Mage_Eav_Model_Entity_Abstract.
So, to end up this question, when you want to get some data in Magento, you call it like this: Mage::getModel('module/model')->load(1);
where 1 is the primary key id for some Regular/Simple table, while in
EAV so many tables are joined to fetch just single row of data.
No comments:
Post a Comment