yii2在数据库添加新字段后Model增加属性的方法

为了方便描述,假设要添加的字段名是 column1 int(64);

其实很简单,在model文件中什么都不用加就行,yii2会自动将对应的表字段添加到当前model中,不需要手动设置。

但不能在model加public | private | protected $column1,否责该属性会覆盖掉字段名。
如果需要定义字段类型,在rules中加入:

  return [

[['column1'], 'integer'],

//[['column1'],'default','value'=> 0],// 默认值

];

设置默认值也可以在beforeSave($insert)加入

$this-> column1 = 0;

另外,如果需要model获取非表字段的属性表单数据,则需要在rules中加入下面的项。

否则用$model->load(Yii::$app->request->post()) 无法将表单数据加载到model对象中。

return [

[['property1'], 'required'],//property1 是通过public | private | protected 声名的。

//[['column1'],'default','value'=> 0],// 默认值

];

发表评论

电子邮件地址不会被公开。 必填项已用*标注