By default model classes are available within the protected/models dirctory. Every class must be inherit from the CModel or subclass. Yii difines two sub classes. They are CActiveRecord, CFormModel.
CActiveRecord is conntected with database table model (classes) and it represent the table structure.
CFormModel is the basic model class and conntected to HTML forms.
Class Extend CFormModel Structure
<?php
class ClassName extends CFormModel {
// Attributes...
public $Attribute_information;
// Methods...
public function rules() {}
public function attributeLabels() {}
}
?>
Class Extend CActiveRecord Structure
class ClassName extends CActiveRecord {
// Methods...
public static function model($className=__CLASS__) {}
public function tableName() {}
public function rules() {}
public function relations() {}
public function attributeLabels() {}
public function search() {}
}
Available Validators By Default
- boolean
- captcha
- compare
- date
- default
- exist
- file
- filter
- in
- length
- match
- numerical
- required
- safe
- type
- unique
- unsafe
- url
More Validation Futures In Yii Model
Model Events
- afterConstruct()
- afterDelete()
- afterFind()
- afterSave()
- afterValidate()
- beforeDelete()
- beforeFind()
- beforeSave()
- beforeValidate()