envoyer des données en tant qu'objet JSON de Python à Javascript avec Jinja
Je suis en train d'envoyer un lat/long point comme un objet JSON à partir de Python à un script javascript. Je suis en utilisant le Flacon donc la suite est Jinja template..
Python:
@app.route('/')
def homepage():
lat_lng = (39.7392,-104.9847)
return render_template("index_v2.html", lat_lng=json.dumps(lat_lng))
html avec js:
<script type='text/javascript'>
var map;
function initialize() {
// Create the map.
var lat_lng = eval('({{ lat_lng }})')
map = new google.maps.Map(document.getElementById('map-canvas'), {
zoom: 8,
center: new google.maps.LatLng(lat_lng)
});
}
google.maps.event.addDomListener(window, 'load', initialize);
</script>
Je suis en utilisant le eval parce que la norme de Jinja notation de variable = {{ données }} ne fonctionne pas et j'ai trouvé quelques conseils qui eval a été nécessaire. Des conseils?
source d'informationauteur tesslins
Vous devez vous connecter pour publier un commentaire.
Le Flacon Jinja2 documentation couvre ce assez bien. Le premier exemple en vertu de la Norme "section" Filtres de la montre exactement comment incorporer un objet JSON à partir de python dans un script Javascript:
Donc dans ce cas:
tojson
appelsdumps
sur les données, alors vous devez transmettre les données directement sur le modèle, plutôt que d'appelerdumps
sur elle, sinon vous double-sérialiser les données et jusqu'à la fin avec une chaîne JSON.