2011-03-01 19 views
0

我有以下模板:改寫views.py不使用當地人()

<!DOCTYPE HTML PUBLIC "=//W3C//DTD HTML 4.01//EN"> 
<html land="en"> 
<head> 
    <title>Some Meta Data</title> 
</head> 
<body> 
    <ul> 
     {% for key,values in meta %} 
     <li> {{ key }}, {{ values }} </li> 
     {% endfor %} 
    </ul> 
</body> 

</html> 

和相應的views.py:

def display_meta(request): 
    meta = request.META.items() 
    metadata = [] 
    for k,v in meta: 
     key = k 
     values = v 
    return render_to_response('meta.html', locals()) 

如何重新寫,使得它上面的功能不使用locals()

回答

5

你的觀點可以只是:

def display_meta(request): 
    meta = request.META.items() 
    return render_to_response('meta.html', {"meta": meta}) 

因爲你必須遍歷元生成你沒有做,在視圖中的模板。另外,render_to_response的第二個參數可以是要添加到模板上下文中的鍵的字典。