Tengo un mapa de Folium que se muestra en mi HTML y el código es:
@app.route("/") @app.route("/index") def index(): start_coords = (42.9974521, -78.7907883) folium_map = folium.Map(location=start_coords, zoom_start=14) _ = folium_map._repr_html_() map_div = Markup(folium_map.get_root().html.render()) hdr_txt = Markup(folium_map.get_root().header.render()) script_txt = Markup(folium_map.get_root().script.render()) return render_template("index.html", map_div=map_div, hdr_txt=hdr_txt, script_txt=script_txt)El mapa se ha renderizado dentro de un div como este:
<head> {{ hdr_txt }} </head> <body> <div class="h-3/4 mx-auto"> <div class="border-4 border-dashed border-gray-200 rounded-lg h-full"> {{ map_div }} </div> </div> <body> <script type="text/javascript"> {{ script_txt }} </script>El mapa se representa en las coordenadas seleccionadas. Ahora, en mi JavaScript, tengo una variable como esta:
const coordinates = {latitude: 7.23, longitude: -4.05}Quiero devolver este valor a Flask y volver a renderizar la página. Vi muchas preguntas con respecto a esto, pero aún no he podido encontrar una respuesta correcta. No quiero usar cosas como AJAX o xmlhttprequest ni nada relacionado con ningún tipo de solicitud o cambio de ruta o actualización de página. Una vez que paso el valor, el mapa debería actualizarse en la misma página. ¿Cómo logro esto? Soy muy nuevo en Flask, así que tómese el tiempo para explicarlo. Cualquier ayuda sería muy apreciada.