Add plot functionality to unsaved sql query and use htmx
This commit is contained in:
40
app.py
40
app.py
@@ -478,27 +478,25 @@ def sql_explorer():
|
||||
@app.route("/sql_query", methods=['POST'])
|
||||
def sql_query():
|
||||
query = request.form.get('query')
|
||||
action = request.form.get('action')
|
||||
title = request.form.get('title')
|
||||
|
||||
if action == 'execute':
|
||||
(results, columns, error) = db.sql_explorer.execute_sql(query)
|
||||
saved_queries = db.sql_explorer.list_saved_queries()
|
||||
return render_template('partials/sql_explorer/sql_query.html',
|
||||
title=title,
|
||||
query=query,
|
||||
error = db.sql_explorer.save_query(title, query)
|
||||
saved_queries = db.sql_explorer.list_saved_queries()
|
||||
return render_template('partials/sql_explorer/sql_query.html',
|
||||
title=title,
|
||||
query=query,
|
||||
error=error,
|
||||
saved_queries=saved_queries)
|
||||
|
||||
@app.route("/sql_query/execute", methods=['POST'])
|
||||
def execute_sql_query():
|
||||
query = request.form.get('query')
|
||||
|
||||
(results, columns, error) = db.sql_explorer.execute_sql(query)
|
||||
return render_template('partials/sql_explorer/results.html',
|
||||
results=results,
|
||||
columns=columns,
|
||||
error=error,
|
||||
saved_queries=saved_queries)
|
||||
else:
|
||||
error = db.sql_explorer.save_query(title, query)
|
||||
saved_queries = db.sql_explorer.list_saved_queries()
|
||||
return render_template('partials/sql_explorer/sql_query.html',
|
||||
title=title,
|
||||
query=query,
|
||||
error=error,
|
||||
saved_queries=saved_queries)
|
||||
error=error)
|
||||
|
||||
@app.route('/load_sql_query/<int:query_id>', methods=['GET'])
|
||||
def load_sql_query(query_id):
|
||||
@@ -533,6 +531,14 @@ def plot_query(query_id):
|
||||
plot_div = generate_plot(results_df, title)
|
||||
return plot_div
|
||||
|
||||
@app.route("/plot/show", methods=['POST'])
|
||||
def plot_unsaved_query(): # Rename?
|
||||
query = request.form.get('query')
|
||||
title = request.form.get('title')
|
||||
results_df = db.read_sql_as_df(query)
|
||||
plot_div = generate_plot(results_df, title)
|
||||
return plot_div
|
||||
|
||||
def get_routes():
|
||||
routes = []
|
||||
for rule in app.url_map.iter_rules():
|
||||
|
||||
Reference in New Issue
Block a user