2012-02-03 65 views
1

我遇到了奇怪的問題(?)。也許它是記錄的功能,但我沒有找到它。大量分配給YII AR模型

我有一個從CActiveRecord存在的模型類。在模型中我有方法rules,它玷污了驗證規則。

我有控制器採取行動whatever。在這個動作中,我試圖用從$ _POST得到的數據分配模型屬性。這裏是來自控制器的簡化代碼片段

$model=new SomeModel(); 

if(isset($_POST['SomeForm'])) 
{ 
    $model->attributes=$_POST['SomeForm']; 
    if($model->validate()) 
    { 
     $model->save(); 

    } 
} 

問題出在以下。使用大規模assiginig不是所有的領域都在嘲笑。只有文件夾具有在SomeModel::rules()中聲明的驗證規則。如果我想爲不應該驗證的字段分配數據,那麼該字段會變爲空數據庫。

有人可以解釋會發生什麼嗎?

在此先感謝

回答