Yii2 ActiveRecord设置未知属性:app \ models \

时间:2014-05-08 07:35:53

标签: php oracle exception activerecord yii2

此代码抛出异常:

public function actionSetdubl() {
    $dubls = Yii::$app->request->post('dubl');
    $parent = Yii::$app->request->post('parent');
    $parentInfo = JurForm::find()->where(['PKJUR' => $parent])->asArray()->all()[0];
    for ($i = 0; $i < sizeof($dubls); ++$i) {
      $val = $dubls[$i];
      $jur = JurForm::findOne($val);
      $jur->CFLDUBL = 'Yes';
      $jur->DUBLMDM_ID = $parentInfo['MDM_ID'];
      $jur->DCHANGEDATE = date('Y-m-d H:i:s');
      $jur->save();
    }
    return Yii::$app->getResponse()->redirect('/index.php?r=jur/analysis');
}

在代码为$jur = JurForm::findOne($val);的行上。

例外:

Setting unknown property: app\models\JurForm::PKJUR.

DB:Oracle。

2 个答案:

答案 0 :(得分:0)

也许更好?

$parentInfo = JurForm::find()->where(['PKJUR' => $parent])->asArray()->one()

我认为PKJUR没有在DB中定义。

答案 1 :(得分:0)

ActiveRecord2很难自动映射以大写字母开头的表名。

因此对于这些列,您必须进入模型类并正式声明它们:

public $PKJUR;