Ich versuche, ein Queryset in Djangos views.py an d3.js zu übergeben.Senden von JSON-Daten von Django an d3.js
views.py:
def Index (Anfrage):.. qs = DCPOWERSTATS.objects.all() VALUES ('TS', 'PuE') order_by ('TS') return render (Anfrage, 'Armaturenbrett/dash.html', context = qs})
dash.html:
<!DOCTYPE html>
<meta charset="utf-8">
<style>
.chart div {
font: 10px sans-serif;
background-color: steelblue;
text-align: right;
padding: 3px;
margin: 1px;
color: white;
}
</style>
<div class="chart"></div>
<script src="//d3js.org/d3.v3.min.js"></script>
<script>
var data = {{ data_json }};
var x = d3.scale.linear()
.domain([0, d3.max(data)])
.range([0, 420]);
d3.select(".chart")
.selectAll("div")
.data(data)
.enter().append("div")
.style("width", function(d) { return x(d) + "px"; })
.text(function(d) { return d; });
</script>
ich brauche Änderungen in views.py und dash.html machen zu schaffen so etwas wie: https://bl.ocks.org/mbostock/3885304
Alle vorherigen Antworten sind verwirrend. Ich brauche eine Lösung für views.py sowie dash.html. Ich muss auch die perfekte Möglichkeit kennen, Abfrageergebnis-Ergebnisse an Javascript zu senden.
Danke!
+1 für Vorlagen/Django Rest Framework. Wenn Ihre Daten nur zum Client fließen, sind Vorlagen gut. Aber wenn Sie PUT, POST usw. akzeptieren müssen, ist DRF der richtige Weg. – DataSwede
also, wenn ich dynamischen Inhalt brauche, der ajax Anrufe auf der Klientenseite bevorzugt, ist? – sach20
Da @DataSwede bemerkt hat, dass der Datenfluss hier ebenfalls relevant ist. Wenn Ihre Daten nur vom Server zum Client fließen, ist der Vorlagenansatz geeignet. Wenn Ihre Daten jedoch auch zurückfließen müssen, sollten Sie den REST-Ansatz in Betracht ziehen. – dahrens