2012-01-03 9 views
9

Tengo la necesidad de mostrar un par de tablas de la base de datos (4-5 tops) en una página HTML. Tengo que mostrar las columnas, marcar la clave principal y también dibujar las conexiones de las claves externas (flechas, supongo).JavaScript dibuje el esquema de la base de datos

He elegido raphael.js y todo está bien excepto por las flechas de teclas foráneas, porque tienen que evitar la intersección con las tablas y hacerlo de una manera elegante, p. Ej. girando esquinas y esas cosas.

¿Alguien sabe de una solución para eso? Si no, ¿cómo puedo dibujar las flechas fácilmente?

Lo que tengo por ahora como un intento de salida es http://jsfiddle.net/eKF6R/

Y está bien para la conexión de las tablas, pero necesito para conectar las columnas específicas y también para evitar intersección.

+1

realmente no responde a sus preguntas, pero tal vez esté interesado en este http://ondras.zarovi.cz/sql/demo/ – goat

+1

Creo que puede echar un vistazo al software de visualización MindMaps ... es básicamente la misma visualización que necesitas aquí. Tome esto por ejemplo: http://code.google.com/p/js-mindmap/ – simonecampora

+0

Sí, eso pasó por mi mente. Intentaré esto también. Mientras tanto, creo que tengo una solución de trabajo por el momento, la publicaré aquí en los comentarios de mañana para que alguien la estudie algún día. – FreeCandies

Respuesta

1

se puede comprobar la siguiente referencia doc de Raphaël: http://raphaeljs.com/reference.html#Paper.path

Puede utilizar 'L' como parámetro para dibujar líneas en lugar de curvas:

var path = ["M", x1.toFixed(3), y1.toFixed(3), "L", x2, y2, x3, y3, x4.toFixed(3), y4.toFixed(3)].join(","); 

Tal vez han pasado 2 años a partir de su pregunta, pero muchas personas podrían tener la misma pregunta (como yo).

Atentamente.

Cuestiones relacionadas