A model represents a single data object. It could be a row in a database table or an html form with user input fields. Each field of the data object is represented by an attribute of the model. The attribute has a label and can be validated against a set of rules.
Yii implements two kinds of models: Form models and active records. They both extend from the same base class, CModel.
A form model is an instance of CFormModel. Form models are used to store data collected from user input. Such data is often collected, used and then discarded. For example, on a login page, we can use a form model to represent the username and password information that is provided by an end user. For more details, please refer to Working with Forms
Active Record (AR) is a design pattern used to abstract database access in an object-oriented fashion. Each AR object is an instance of CActiveRecord or of a subclass of that class, representing a single row in a database table. The fields in the row are represented as properties of the AR object. Details about AR can be found in Active Record.
For the best practices on defining your models check Best MVC Practices, Model section.
Found a typo or you think this page needs improvement?
Edit it on github !