I get nostalgic when I think of this topic as we formed our first Magento team five years back. We were carried away and lost with our first Magento project. It took us some time to realize that Magento is different logic and uses EAV database model and the MVC model which is different from the traditional one.
It was interesting as we learned and mastered Magento on a real time client project and were successful in completing the project on time.
Just thought it would be nice to give a brief insight on “BEHIND MAGENTO”. It will be easy for people who start with Magento to have a brief understanding and can plan their learning.
This is what goes behind Magento :
- Magento is powered by Zend Framework.
- Entity-Attribute-Value (EAV) database model which is used by Magento to store data.The data is recorded as 3 columns;
- The Entity: The item being described.
- The Attribute or Parameter: A foreign key into a table of attribute definitions. At the very least, the attribute definitions table would contain the following columns: an attribute ID, attribute name, description, data type, and columns assisting input validation, e.g., maximum string length and regular expression, set of permissible values, etc.
- The value of the attribute.
- Magento uses its own Model-View-Controller (MVC) model which is different from traditional MVC model. Magento’s MVC model follows:
- The use of a layout file to control what’s displayed on each view.
- The use of “blocks” that can be inserted into any view easily via the layout.
- The use of a model re-write system.