Una de las cosas que más aburren y fastidian a los programadores es el documentar, sin embargo esta actividad es parte vital de cualquier proyecto de desarrollo, ya decía en mi post anterior que una de las características del éxito de una aplicación de Software Libre es si esta, está bien documentada.
Bueno, luego de trabajar un buen tiempo con Symfony como framework de desarrollo para php, coincidencialmente descubrí una funcionalidad que no estaba documentada a simple vista en el libro de Symfony o en tutoriales que había leído ( o tal vez no me fije bien en esa parte ), esta funcionalidad, la cual creo que es provista por el ORM propel en sí, te permite dado el esquema de tu base de datos generar un archivo de texto que puede ser usado por graphviz para generar el diagrama de relaciones.
Al ejecutar el siguiente comando en la raíz de tu aplicación:
symfony propel:graphviz
Esto genera un archivo con la extensión .dot en el directorio graph de tu aplicación, el cual puedes transformar en una imagen en formato png usando el siguiente comando:
dot -Tpng graph/propel.schema.dot -o graph/propel.schema.png
Claro debes tener instalado el paquete graphviz para poder hacer uso del comando dot, esto generará un gráfico parecido a este:
Esto fue probado con diagramas de bases de datos complejos y los gráficos obtenidos fueron muy profesionales, bien dimensionados y ordenados, al parecer esta funcionalidad era un plugin que luego fue incorporado formalmente al core de Symfony, así que la poca documentación de uso que encontré fue la del mismo plugin en:
Publicado en meneame http://www.meneame.net/story/graficando-tu-esquem…