2015-09-05 29 views
0

我是Django的新手,我遇到了問題。我試圖讓我的Web應用程序變得更有活力。所以我想在視圖中創建數據,並在HTML文檔中使用Context()進行設置。下面是我想:如何在Django中使用上下文

這是視圖:

def test(request): 

c = Context({"data": "{ label: 'Abulia', count: 10, start: 0, end: 10, radius: 10 }, { label: 'Betelgeuse', count: 20, start: 10, end: 20, radius: 20 }"}) 
t = get_template('graphtest.html') 
html = t.render(c) 
return HttpResponse(html) 

這裏是它應該用我的HTML文檔的一部分:

var dataset = [ {{data}} ]; 

但它不」工作。 有人能告訴我爲什麼,並幫助我如何做出這樣的事情?

感謝

回答

2

簡單地說,上下文很簡單,就是你發送到模板的字典。這些鍵然後在模板中作爲變量可用。

下面是一個例子:

from django.shortcuts import render 

def test(request): 
    ctx = {"data": "{ label: 'Abulia', count: 10, start: 0, end: 10, radius: 10 }, { label: 'Betelgeuse', count: 20, start: 10, end: 20, radius: 20 }"} 
    return render(request, 'graphtest.html', ctx) 

在模板:

var dataset = [ {{ data|escapejs }} ]; 

使用escapejs,這樣你的價值是正確的JavaScript逃脫。

+0

啊我以爲這只是一個字符串。但是你的回答對我來說不起作用。我的代碼如下所示:'def graphtest(request):c = {「data」:「{label:'Abulia',count:10,start:0,end:10,radius:10},{label:'Betelgeuse ',count:20,start:10,end:20,radius:20}「} return render(request,'graphtest.html',c)'和HTML:'var dataset = [{{data | escapejs}} ];' –

+0

你的答案再次無效!你能否再次以更好的方式解釋它? –

相關問題