【问题标题】:Massive assigning to YII AR model大量分配给 YII AR 模型
【发布时间】:2012-02-03 16:50:31
【问题描述】:

我遇到了奇怪的问题(?)。也许它是记录的功能,但我找不到它。

我有一个从 CActiveRecord 扩展而来的模型类。在模型中,我有方法rules,它破坏了验证规则。

我有控制器,动作为whatever。在此操作中,我尝试使用从 $_POST 获取的数据分配模型属性。这是来自控制器的简化代码 sn-p

$model=new SomeModel();

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

    }
}

问题出在下面。使用大量 assiginig 并非所有领域都在进行 assing。只有在SomeModel::rules() 中声明了验证规则的文件。如果我想为不应验证的字段分配数据,则该字段在数据库中为空。

有人能解释一下发生了什么吗?

提前致谢

【问题讨论】:

    标签: php activerecord yii


    【解决方案1】:

    您需要在规则函数中声明其余变量(您想要大量分配的变量)是“安全的” -

    http://www.yiiframework.com/wiki/161/understanding-safe-validation-rules/

    【讨论】:

      猜你喜欢
      • 2012-09-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多