今天遇到个问题,之前用migrate addcolumn追加了一个字段,并且设置为非空,默认值0,在保存的时候直接提示该字段不能为空not null,记录一下
$this->addColumn('table', 'column', $this->tinyInteger(1)->notNull()->defaultValue(0)->comment('字段介绍'));
开始挺奇怪的,都有默认值了,为啥还不行。
后来打印语句发现,Yii2字段验证的时候回会把该字段默认添加进去save
找到问题了,解决办法自然就有了
1.既然有默认值直接把该字段过滤掉unset(column)
2.验证该字段是否为null,如果为空则设置默认值即可
可能各位大神还有其他的解决方式,欢迎留言、欢迎留言、欢迎留言