Edición de «Callbacks ActiveRecord»
De KumbiaPHP Framework Wiki
Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.
Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.
Revisión actual | Tu texto | ||
Línea 1: | Línea 1: | ||
− | |||
El ActiveRecord controla el ciclo de vida de los objetos creados y leídos, supervisando cuando se modifican, se almacenan o se borran. Usando callbacks (o eventos), el ActiveRecord nos permite intervenir en esta supervisión. Podemos escribir el código que pueda ser invocado en cualquier evento significativo en la vida de un objeto. Con los callbacks podemos realizar validación compleja, revisar los valores que vienen desde y hacia la base de datos, e incluso evitar que ciertas operaciones finalicen. Un ejemplo de estos callbacks puede ser una validación en productos que evita que productos ‘activos’ sean borrados. | El ActiveRecord controla el ciclo de vida de los objetos creados y leídos, supervisando cuando se modifican, se almacenan o se borran. Usando callbacks (o eventos), el ActiveRecord nos permite intervenir en esta supervisión. Podemos escribir el código que pueda ser invocado en cualquier evento significativo en la vida de un objeto. Con los callbacks podemos realizar validación compleja, revisar los valores que vienen desde y hacia la base de datos, e incluso evitar que ciertas operaciones finalicen. Un ejemplo de estos callbacks puede ser una validación en productos que evita que productos ‘activos’ sean borrados. | ||
− | <source lang=php> | + | <source lang=php line> |
− | class User extends ActiveRecord { | + | 1.class User extends ActiveRecord { |
− | + | 2. | |
− | + | 3. public before_delete = “no_borrar_activos”; | |
− | + | 4. | |
− | + | 5. public function no_borrar_activos(){ | |
− | + | 6. if($this->estado==’A’){ | |
− | + | 7. Flash::error(‘No se puede borrar Productos Activos’); | |
− | + | 8. return ‘cancel’; | |
− | + | 9. } | |
− | + | 10. } | |
− | + | 11. | |
− | + | 12. public function after_delete(){ | |
− | + | 13. Flash::success("Se borro el usuario $this->nombre"); | |
− | + | 14. } | |
− | + | 15. | |
− | } | + | 16.} |
</source> | </source> | ||
Línea 49: | Línea 48: | ||
=before_save = | =before_save = | ||
− | Es llamado justo antes de realizar el proceso de guardar | + | Es llamado justo antes de realizar el proceso de guardar cuando se llama el método save en un modelo. Se puede cancelar la acción que se esté realizando si este método devuelve la palabra 'cancel'. |
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
=before_update= | =before_update= | ||
− | Es llamado justo antes de realizar el proceso de actualización cuando se llama el método save o update en un modelo. Se puede cancelar la acción que se esté realizando si este método devuelve la palabra 'cancel' | + | Es llamado justo antes de realizar el proceso de actualización cuando se llama el método save o update en un modelo. Se puede cancelar la acción que se esté realizando si este método devuelve la palabra 'cancel'. |
=before_create= | =before_create= |