Skip to main content
 首页 » 编程设计

javascript之在 Javascript 中使用 Django JSON 响应对象

2025年05月04日24java哥

这可能是个愚蠢的问题,但我是 JavaScript 的新手。我有一个 Python 字典的 JSON 编码响应,我想用它作为数据注入(inject)我的 javascript

然而,django 返回由带有 header 和散列图的字符串组成

如何,但更重要的是,应该在哪里进行将其剥离为可用数据的逻辑? (我只想要 map )

  • 在 views.py 中(应该修改我返回 JSON 对象的整个方式)
  • 在模板中(我的方法没问题,但我应该写一个自定义过滤器)
  • 在我的 html 中(我应该在文档加载时在 javascript 中删除它的标题结果)

谢谢

编辑:

jQuery 部分

var chart; 
$(document).ready(function() { 
    chart = new Mycharts.Chart({ 
        chart: { 
            renderTo: 'container', 
            defaultSeriesType: 'bar' 
        }, 
        settings: { 
             data: [], 
        }, 
    ... 

View

data = assemble_dict() 
testVar2 = json_response(data) 
return render_to_response('home.html', { "testVar": testVar, "testVar2": testVar2 }) 

应用逻辑

def assemble_dict(): 
    data = {} 
    objects = Balance.objects.all() 
    for obj in objects: 
        data[obj.name.name_bank] = obj.money 
    return data 
 
def json_response(*args): 
    return HttpResponse( 
        simplejson.dumps(args), 
    ) 

这是我现在从 {{ testVar2 }} 得到的: 内容类型:文本/html; charset=utf-8 [{"Stuff": 50, "MoreStuff": 3}]

请您参考如下方法:

为什么您的 View 与(我猜您指的是)应用程序逻辑分开?看起来您的 json_response 函数是一个 View ,因为它返回一个 HttpResponse。您需要直接从 json_response 返回值,或者省略该函数中的 HttpResponse 调用。