2

HttpResponseRedirect の使用時に辞書変数を送信できない

        render_to_response('edited/display.html',context_instance=RequestContext(request,{'newlist': newlist}))

    //How can the dictionary and the request sent back again

    //sumthing like this

    return HttpResponseRedirect('edited/display.html',context_instance=RequestContext(request,{'newlist': newlist}))
4

4 に答える 4

4

応答リダイレクトは名前が示すように、ユーザーのブラウザーを新しい URL にリダイレクトするため、HttpResponseRedirect で新しい場所以外を渡す意味はありません。

新しい場所の URL でそのデータを確認できるように、データを渡したい場合はview、URL 引数として渡します。

return HttpResponseRedirect('edited/display.html?msg=I was redirected')
于 2010-04-05T07:48:52.593 に答える
2

したがって、既存の回答に加えて別の回答を追加させてください。

my_url = reverse("my_app.views.my_path") + "?action_result=124"
return HttpResponseRedirect(my_url)

逆関数は次のとおりです。from django.core.urlresolvers import reverse

于 2011-12-18T08:58:25.573 に答える
0

あなたが本当に探しているのは、redirect1.1で導入された機能だと思います

代わりに、あなたのケースでは、

redirect(view_name,view_parameter)

そのためには、最初にビューを変更して new_list パラメータを取得するか、必要なスラッグまたは ID を渡す必要がある場合があります。

于 2010-04-05T08:56:56.980 に答える
0

ドキュメントから:

コンストラクターは、単一の引数 (リダイレクト先のパス) を取ります。これは、完全修飾 URL (例: ' http://www.yahoo.com/search/ ') またはドメインのない絶対 URL (例: '/search/') です。

于 2010-04-05T07:15:37.150 に答える