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. For those who don’t know
what EAV is, please read my 3rd answer below. 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.
reference: http://jaseir.com/magento/how-magento-orm-works/
reference: http://jaseir.com/magento/how-magento-orm-works/
No comments:
Post a Comment