Django模板和JSON响应

时间:2017-05-13 09:17:17

标签: python json django

我正在使用Django创建网站。为了在html中使用json,我在视图中发送json。

这是我的代码:

views.py

 def json_data(request):
     data = words.objects.all()
     return JsonResponse(list(data), safe=False)

models.py

class words(models.Model):
   word = models.CharField(max_length=20)
   value = models.FloatField(default=0)
   def __str__(self):
       return self.word

我想解析json并以此形式使用它。

result.html

items: [
    {text: "Java", count: "236"},
    {text: ".Net", count: "382"},
    {text: "Php", count: "170"},
    {text: "Ruby", count: "123"},
    {text: "D", count: "12"},
    {text: "Python", count: "170"},
    {text: "C/C++", count: "382"},
    {text: "Pascal", count: "10"},
    {text: "Something", count: "170"},
  ],

我不知道如何编写JS代码。请帮帮我。

1 个答案:

答案 0 :(得分:0)

您需要使用AJAX调用才能异步获取数据,如下所示。

试试这个

def view_name(request):
    html = '<div>Hello World</div>'
    return JsonResponse({"data": html, "message": "your message"})

在html中

<div id="test"></div>
<script>
$(document).ready(function(){
    $.ajax({
        type: 'POST',
        dataType: 'json',
        url: '/view/',
        data: data,
        success: function(response) {
             console.log(response.message);
             $('#test').append(response.data);
       }
    });
});
</script>