2016-06-19 7 views
0

私は1.8.4から1.9.7への私のDjangoプロジェクトをアップグレードし、今私は、次のジャンゴ警告 - RemovedInDjango110Warning:レンダリング()辞書を呼び出さなければなりません、ないコンテキスト

RemovedInDjango110Warningを警告ます: render()はContextではなくdictで呼び出す必要があります。 リターンのHttpResponse(t.render(C))

私の見解では、一般的に、この

def my_view(request): 

    . 
    . 
    . 

    context_data = "context data to render" 

    t = loader.get_template('maps/my_template.html') 
    c = Context(context_data) 
    return HttpResponse(t.render(c)) 

のようにこの問題を解決する方法の提案を見て?


更新

承認に基づいて私のコードは次のようになります答え:

from django.shortcuts import render 

def my_view(request): 

    . 
    . 
    . 

    context_data = "context data to render" 

    return render(request, 'maps/my_template.html', dict(context_data)) 

答えて

3

あなたは

context_data = "context data to render" 

t = loader.get_template('maps/my_template.html') 
c = Context(context_data) 
return HttpResponse(t.render(c)) 

新しい方法を反映するためにあなたのコードの大部分を変更することができるようにdjango.shortcuts.render機能は、なり今では要求が含ましばらくユーティリティメソッドされていると辞書にコンテキストデータを渡しています実際のエラーは、しかしrenderが今だけの辞書ではなく、コンテキストオブジェクトを必要としていることを述べている

render(request, 'maps/my_template.html', {'item1': value }) 

に変わります。だから

0

context_data["context_data"] = "context data to render"context_data = "context data to render"を変更してみてください。

context_dataを変更することが目標です。

関連する問題