хорошо, чтобы понять одну строку
$model->attributes = $_POST['Message'];
мы должны посмотреть на класс модели. в классе модели (расширяет CActiveRecord, обычно автоматически генерируется gii) у нас есть две важные функции, attributeLabels и rules.
Атрибут attributeLabels перечисляет все свойства моделей (или переменные, или столбцы, которые мы хотим сохранить в базе данных, или просто атрибуты).
В функции правил у нас есть все правила, установленные для каждой переменной / столбца / атрибута.
В автоматически сгенерированной форме эти правила напрямую отражают структуру нашей базы данных, и в некоторых случаях у нас нет правила, поэтому просто пишем строку
array('name', 'safe'),
Это правило указывает на то, что правило не применяется, и сохранение переменной в базе данных целесообразно.
Теперь, когда в контроллере (или где-либо еще), когда у нас есть $ _POST ['Message'] и мы применяем одну строку
$model->attributes = $_POST['Message'];
Все наши опубликованные значения применяются к $ model, то есть мы не должны проходить проверку и присваивание каждого атрибута / свойства, а только после одной строки
$model->save();
все сохраняется в базе данных после проверки. В этом прелесть использования Model (в данном случае CActiveRecord).