我對Django/web開發仍然很陌生,但對Python和PSQL有經驗。Django查詢數據庫並將數據發送到模板
我有一個psql數據庫,其中一個表的ID,日期和值爲股票投資組合。該表格標題爲absolutedollarvalue。
我想將數據發送到模板,然後使用Highcharts.JS對其進行繪製。據我所知,我需要設置models.py來查詢在Django中安裝的數據庫,將其轉換爲JSON,然後將其發送到模板進行繪圖。
任何人都可以告訴我,如果這是正確的語法來獲取id,日期和值,以及如何發送日期和json格式的值到模板?
這是適用的模型部分:
class Absolutedollarvalue(models.Model):
cik = models.CharField(max_length=16)
date = models.DateField()
value = models.DecimalField(max_digits=65535, decimal_places=65535)
class Meta:
managed = False
db_table = 'absolutedollarvalue'
下面是我的views.py代碼:
from django.shortcuts import render
from django.http import HttpResponse
from django.db import connection
from toa.models import Absolutedollarvalue as adv
import psycopg2
import json
import datetime
def adv(request):
adv.objects
a = adv(id = '1103804')
return render(request,toa/graphs.html,a)
這是我的模板:
<html>
<head>
<title> Fund Performance </title>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.8.2/jquery.min.js"></script>
<script src="http://code.highcharts.com/highcharts.js"></script>
</head>
<body>
<div id="chart_container" style="width:100%; height:400px;"></div>
<script type="text/javascript">
$(document).ready(function() {
var absolutedollarval = {
chart: {
renderTo: 'chart_panel',
type: 'time-series',
},
legend: {enabled: false},
title: {text: 'Daily NAV'},
xAxis: {title:{text:'Date'}},
yAxis: {title: {text: 'dollar value'}}
};
var chartDataUrl = "{% url 'chart_data_json' %}?name = avg_by_day"
+"&days=14";
$.getJSON(chartDataUrl,
function(data){
absolutedollarval.xAxis.categories=
absolutedollarval.series[0].name =
absolutedollarval.series[0].data =
var chart = new Highcharts.Chart(absolutedollarval);
});
});
</script>
</body>
</html>
真的很感謝你的幫助可以給。謝謝!
編輯:
這是你將如何價值推到模板,如果我想要的日期和值列? JSON格式
def adv(request):
dates = adv.objects.filter(cik = '1103804').values('date')
vals = adv.objects.filter(cik ='1103804').value('absolutedollarvalue')
data = serializers.serialize('json', dates)
data2 = serializers.serialize('json',vals)
return render(request,'toa/graphs.html',{"dates":data,"values":data2})
你'adv'功能看起來像廢話。您應該閱讀django文檔以瞭解如何編寫視圖函數並傳遞要在模板中呈現的變量。 –
我用django文檔檢索對象,他們給出了例子:>>> Blog.objects >>> b = Blog(name ='Foo ',tagline ='Bar') >>> b.objects –
user3628240
所以我想對象a應該給我所有的數據與該ID的行。我只是想將日期和值轉換爲json,然後將它發送給highcharts – user3628240