Llame a una ruta desde otra ruta en Flask

Estoy tratando de descubrir la mejor manera de obtener datos en mi plantilla en una aplicación de matraz. Tengo dos rutas, una para mostrar la página de índice y otra que simplemente devuelve json. Estoy tratando de averiguar la mejor manera de acceder a esta información. Actualmente tengo las siguientes rutas:

jsonObj = module.queryExternalApi() @app.route("/") def index(chapi=jsonObj): data = getData() return render_template('index.jade', chapi=chapi) @app.route("/data/dashboard0") def getData(): return jsonify(jsonObj) 

En este caso, solo llamo al módulo que obtiene los datos que están bien para ejecutarlo localmente, pero quiero exponer esos datos en @app.route('/data/dashboard0') y obtenerlos desde allí (y cualquier información nueva). abajo de la línea). ¿Hay una manera de llamar a una url de otra, o estoy haciendo esto de manera incorrecta?

Sí, este es el enfoque equivocado. En general, con los marcos web es mejor pensar en una ruta como el servicio completo de una página. Pero eso no quiere decir que no pueda llamar a múltiples funciones desde ese controlador de ruta. Por lo tanto, en su caso, recomendaría mover su código json a su propia función, a la que puede llamar desde ambas rutas si lo necesita.