No puedo reemplazar el valor de un atributo

Como se puede reemplazar el valor de un atributo? Cuando envío la información via post hay atributos que no los lleno por que los debo de llenar en el controller ejemplo:

$model->activo = 1;
$model->usuario_de_alta = "saco el valor de yii usando Yii::$app->user->identity";
$model->fecha_de_alta = date('Y-m-d h:i:s');

al hacer eso en el actionCreate si imprimo el request si veo los valores de todos los atributos menos de los que les quiero pasar el valor el código seria asi en el controller:

public function actionCreate()
    {
        $model = new Proveedores();
        $modelMun = new Municipios();
                
        $arrTipo = ['1'=>'FISICO','2'=>'MORAL'];

        if ($this->request->isPost) {
            $model->activo = 1;
            $model->usuario_de_alta = Yii::$app->user->identity->id;
            $model->fecha_de_alta = date('Y-m-d h:i:s');
            
            if ($model->load($this->request->post()) && $model->save()) {
                return $this->redirect(['view', 'id_proveedor' => $model->id_proveedor]);
            }
        } else {
            $model->loadDefaultValues();
        }

        return $this->render('create', [
            'model' => $model,
            'arrTipo'=>$arrTipo,
            'arrMun'=>$modelMun->getMunicipios()
        ]);
    }

pero nunca me reemplazar el valor de activo = 1 en el $model de Proveedores, como puedo hacer que tome el valor que le estoy pasando por string? Y elimine de la DB el valor como requerido, inclusive en el model ya lo quite como requerido y aún asi no le puedo pasar el valor.

Bueno, han pasado dos meses pero nunca es tarde, supongo.

A mí esto me suena a un fallo de validación.

Todo lo que asignes a un modelo debe ser validado. En los campos donde no hay intervención del usuario puedes usar el validator “safe” para asignarlo directamente.

A ver si le puede servir a alguien.