Primero un diagrama:
// TODO
Y ahora el código de las clases, junto con las 2 clases de ejemplo, MiClaseDesactivable y MiClaseHistoriable:
<?php abstract class Desactivable { public $activo; public $alta; public $baja; } ?>
<?php abstract class Historiable extends Desactivable { public $inicio; public $fin; } ?>Como me gusta hacer borrados lógicos en vez de físicos en las tablas de datos, todas las clases de mis proyectos heredarán de una de éstas 2 clases abstractas, directamente de Desactivable, para los casos generales, o de Historiable, para tablas versionadas o históricas (Slowly Changing Dimension de tipo 2). Ver http://raulcad.blogspot.com.es/2013/01/modelo-de-datos.html
<?php class MiClaseDesactivable extends Desactivable { // TODO añadir los campos propios } ?>
<?php class MiClaseHistoriable extends Historiable { // TODO añadir los campos propios } ?>
No hay comentarios:
Publicar un comentario