Chapter 4. Models and Collections
Like most modern frameworks and platforms, these days Magento embraces an Object Relational Mapping (ORM) approach over raw SQL queries. Though the underlying mechanism still comes down to SQL, we are now dealing strictly with objects. This makes our application code more readable, manageable, and isolated from vendor-specific SQL differences. Model, resource, and collection are three types of classes working together to allow us full entity data management, from loading, saving, deleting, and listing entities. The majority of our data access and management will be done via PHP classes called Magento models. Models themselves don't contain any code for communicating with the database.
The database communication part is decoupled into its own PHP class called resource class. Each model is then assigned a resource class. Calling load
, save
, or delete
methods on models get delegated to resource classes, as they are the ones to actually read,...