Agrega diagrama de relaciones (FK) al Query Runner
- GetSchemaRelations: trae todas las llaves foráneas de la base con consulta específica por motor (Postgres/MySQL/MSSQL/SQLite). No aplica a Redis/Mongo (schemaless). - Endpoint GET /query-runner/relations, con el mismo chequeo de autorización por conexión que ya usa RunQuery — de paso se lo agrego también a GetDatabases/GetTables, que no lo tenían. - UI: botón "Ver relaciones" (diagrama completo) y un ícono por tabla en el árbol lateral (relaciones solo de esa tabla), renderizado con Mermaid.js servido localmente (public/js/mermaid.min.js, sin CDN).
This commit is contained in:
@@ -353,6 +353,7 @@ func AdminApiRoutes(api fiber.Router) {
|
||||
h.Get("/query-runner/connections", controllers.GetConxDbList)
|
||||
h.Get("/query-runner/databases", controllers.GetDatabases)
|
||||
h.Get("/query-runner/tables", controllers.GetTables)
|
||||
h.Get("/query-runner/relations", controllers.GetRelations)
|
||||
h.Get("/query-runner/test", controllers.TestConnection)
|
||||
h.Post("/query-runner/run", controllers.RunQuery)
|
||||
h.Post("/query-runner/run-batch", controllers.RunBatchQuery)
|
||||
|
||||
@@ -140,6 +140,7 @@ func UserRoutes(app fiber.Router) {
|
||||
protected.Get("/query-runner/connections", controllers.GetConxDbList)
|
||||
protected.Get("/query-runner/databases", controllers.GetDatabases)
|
||||
protected.Get("/query-runner/tables", controllers.GetTables)
|
||||
protected.Get("/query-runner/relations", controllers.GetRelations)
|
||||
protected.Get("/query-runner/test", controllers.TestConnection)
|
||||
// Sin SoloAdmin a propósito: RunQuery/RunBatchQuery ya limitan el alcance
|
||||
// internamente (un no-admin solo ve/consulta las conexiones que su rol
|
||||
|
||||
Reference in New Issue
Block a user