La modificación de un atributo modelo no llegará a la base de datos en la Yii :: CActiveRecord beforeSave ()

StackOverflow https://stackoverflow.com/questions/4000763

  •  25-09-2019
  •  | 
  •  

Pregunta

estoy poniendo en práctica el saneamiento de HTML para campos de formulario, en el método beforeSave () de un modelo. Pero no funciona.
Ejemplo:

public function beforeSave()
{
  $this->anAttribute = 'somevalue';
  var_dump( $this->anAttribute );
}

somevalue es enviada realmente, pero nunca llega a la base de datos, por lo que en el medio beforeSave () y save () se pierde el valor y lo que está guardado es el valor del campo forma original.

¿Fue útil?

Solución

Usted tiene que cambiar su línea

public function beforeSave()
{
  $this->anAttribute = 'somevalue';
  return true;
}

Otros consejos

¿Y si uso afterValidate () en lugar de beforeSave ()?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top