相关疑难解决方法(0)

django-为什么重定向后,表单显示"无"

我有一个表单,在输入信息后,根据信息过滤数据库并进行一些计算,最后将结果显示给重定向的URL.

我确实可以重定向到另一个URL并成功显示结果.但问题在于它无法显示用户提交的任何数据,只显示每个字段的内容,结果不是基于fitered queryset.让我们说总和,它只是总结数据库中的所有列,而不使用过滤结果.

我怀疑查询集没有将过滤后的结果传递给def get_context_data,因此get_context_data中的查询集不起作用.

如果你解开我的疑问,真的非常感谢你.

(我根据建议合并了2个类的EDIT版本,希望有人能纠正这个EDIT版本,谢谢)

在此输入图像描述

urls.py

url(r'^result_list/$',ResultView.as_view(),name='result'),
url(r'^input/$',InputFormView.as_view(),name='input'),
Run Code Online (Sandbox Code Playgroud)

views.py

class InputFormView(request):
#class InputFormView(FormView):
    template_name = 'inputform.html'
    form_class = InputForm

    response = HttpResponse( 'result' )
    request_form_data = request.POST #you need to sanitize/clear this data
    response.set_cookie('form_data', request_form_data)

#redirect to result page with submitted form information

    def get_success_url(self):
        return ''.join(
        [
            reverse('result'),
            '?company=',self.request.POST.get('company'),  <--do I need to change "POST" into "USER"?
            '&region=',self.request.POST.get('region')
        ]
        )

#class ResultView(ListView):
class ResultView(request):
    context_object_name = 'result_list'
    template_name = 'result_list.html'
    model = Result

    def get_context_data(self, **kwargs):
        context …
Run Code Online (Sandbox Code Playgroud)

python forms django

5
推荐指数
1
解决办法
610
查看次数

标签 统计

django ×1

forms ×1

python ×1