1

我正在尝试编辑 D3 条形图http://bl.ocks.org/3885304以适合来自 Django 的 JSON 数据。我在 Django 中生成了一个 JSON 格式的变量: [{"score": 1, "color": "blue"}, {"score": 5, "color": "green"}, {"score": 3, "color": "red"} etc. 所以我想在 x 轴上的颜色和在 y 轴上的分数。

有什么方法可以在 HTML 模板中实现 Django 变量而无需创建 tsv 或 csv 文件?

4

1 回答 1

2

将数据转换为正确的格式并准备就绪通常是您在模型中执行的操作。这是一个简单的假设示例:

# In models.py:
class Address(models.Model):
    street = models.CharField(max_length=200)
    city = models.CharField(max_length=200)
    state = models.CharField(max_length=200)
    def get_full_address(self):
        return self.street + "\n" + self.city + ", " + self.state

现在在您的视图中,将模型实例传递到模板中:

return render(request, 'address.html', {'address': address_object})

在模板中:

{{ address.get_full_address }}

... 将返回文本格式的地址。

因此,如果我想将其提供给 JavaScript jQuery 函数(再次,用于假设演示),我可以说:

<span id="address_label"></span>
<script>
    ...
    $("#address_label").html("{{ address.get_full_address }}");
    ...
</script>
于 2012-10-24T14:51:52.397 回答