如何在Django中使用HttpResponseRedirect发布数据?

时间:2018-12-08 21:53:05

标签: django django-models django-templates django-views

如何使用HttpResponseRedirect发布数据?

我在Django管理更改表单中有一个按钮:

<input type="submit" value="Test Peer" name="_peer-test">

以及获取它的视图:

def response_change(self, request, obj): ### response
    if "_peer-test" in request.POST:  
          url = request.POST.get('obj', '/export')
          return HttpResponseRedirect(url)

第一行def response_change(self,request,obj):具有数据

因此,如果我输入obj.name,我将获得请求的数据。

我想要的是重定向到另一个视图,以便发布信息。

1 个答案:

答案 0 :(得分:0)

您可以从POST获取数据,并将其作为GET参数发送。见

def response_change(self, request, obj): ### response
    if "_peer-test" in request.POST:  
          url = request.POST.get('obj', '/export')
          if url != '/export':
              # because "obj" in variable url
              name = url.name
              url += "?name={}".format(name)
          return HttpResponseRedirect(url)

因此,您可以鉴于需要获得此值。示例:

def reciever_view(request):
    name = request.GET.get('name','')
    # do some with name ...