What are the differences between Joomla Model Types?
I'm trying to get to grips with the power behind Joomla (3.x)'s framework.
I've noticed that there are multiple types of model that can be used in a component:
JModelAdmin
Prototype admin model. Acts as a Factory class for application specific objects and provides many supporting API functions.
JModelLegacy
Base class for a Joomla Model Acts as a Factory class for application specific objects and provides many supporting API functions.
JModelList
Model class for handling lists of items. Acts as a Factory class for application specific objects and provides many supporting API functions.
JModelForm
Prototype form model. Acts as a Factory class for application specific objects and provides many supporting API functions.
JModelItem
Prototype item model.
I understand that JModelLegacy
seems to be the foundation class. My models have been extending JModelLegacy
by default, however, I was wondering if I could be potentially using the benefits from the other classes.
If there was someone who knows about these models, I would appreciate having an explanation about what the differences are between these model classes, and an intended scenario where you would use one over others.