我正在尝试打印图表并将带有datachart的参数返回到模板。
Views.py:
def errors(request):
totalErrors = total_errors()
table = table_errors()
return render_to_response('macaco_errores.djhtml', {'totalErrors': totalErrors, 'table': table})
没有'table'参数打印图表没有问题,但是当我加载“load_chart”时,我在模板中得到'False'。
编辑: 模板:
{% block head %}
{% load nvd3_tags %}
{% include_chart_jscss %}
{% load_chart charttype totalesData totalesContainer extra %}
{% endblock %}
{% block body %}
<div align="center">
<h1>Errors</h1>
{% include_container totalesContainer 600 1000 %}
</div>
<div align="center">
<table border="1">
<tr>
<th>Log</th>
<th>Type</th>
</tr>
{% for type,log,date in table.items %}
<tr>
<td>{{ type }}</td>
<td>{{ log }}</td>
</tr>
{% endfor %}
</table>
</div>
{% endblock %}
答案 0 :(得分:0)
{% load_chart charttype totalesData totalesContainer extra %}
此标记在上下文中需要四个变量:charttype
,totalesData
,totalesContainer
,extra
您的查看功能(仅提供totalErrors
和table
)
因此,无法通过您发布的代码实现这一点。
请参阅django-nvd3文档中的此示例,了解您需要从视图功能提供的上下文数据类型:
http://django-nvd3.readthedocs.org/en/latest/introduction.html#example-how-to-create-a-piechart
另请参阅Django docs,了解如何将视图函数中的变量传递到模板中进行渲染。
例如,在您的视图中,您当前正在使用render_to_response
helper,它将变量名称和值的字典传递给模板...这些是仅可用的变量在模板中。
答案 1 :(得分:-1)
解决方案是:
def counterroresmacaco(request):
errores = errores_macaco()
errores['tabla'] = tipoerror_ticker()
return render_to_response('macaco_errores.djhtml', errores)
'errores'是一个字典,然后在模板中我使用for来迭代'tabla'。 传递两个参数的问题(正如我所做的那样)是django-nvd3无法识别示例中的参数。
{% load nvd3_tags %}
{% include_chart_jscss %}
{% load_chart charttype totalesData totalesContainer extra %}
{% include_container totalesContainer 600 1000 %}
<table border="1">
<tr>
<th>Tipo de log</th>
<th>Ticker</th>
</tr>
{% for reg in tabla %}
<tr>
<td>{{ reg.log }}</td>
<td>{{ reg.ticker }}</td>
</tr>
{% endfor %}
</table>