Переписать views.py без использования locals () - PullRequest
0 голосов
/ 01 марта 2011

У меня есть следующий шаблон:

<!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()?

1 Ответ

5 голосов
/ 01 марта 2011

Ваше мнение может быть просто:

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

Поскольку для создания шаблона вам нужно будет повторять мета, вам не нужно делать это в представлении. Также вторым аргументом render_to_response может быть словарь ключей для добавления в контекст шаблона.

...