Firefox和IE9中的Django POST数据问题,但Chrome中没有

|| 我正在使用Django创建一个网站,当我尝试从Firefox和IE9中的表单(输入名称为\'bsubmit \')提交POST数据时遇到以下错误:   \“ <\'QueryDict中找不到\”键\'bsubmit \':{u \'bsubmit.y \':[u \ '63 \'],u \'bsubmit.x \':[u \' 81 \'],u \'csrfmiddlewaretoken \':[u \'bunchofnumbers \']}> \“ 该功能在Chrome浏览器中可以正常运行,因此我不确定该怎么办。这是我在视图中的处理方式:
def my_view(request):
    if request.method == \'POST\':
        bsubmit = request.POST[\'bsubmit\']
        return render_to_response(\'my_template.html\', {\'bsubmit\': bsubmit},
                                  context_instance=RequestContext(request))
    else:
        bsubmit = \'some_val\'
        return render_to_response(\'my_template.html\', {\'bsubmit\': bsubmit},
                                  context_instance=RequestContext(request))
我觉得我必须缺少一些明显的东西,但我确定它可能是什么。 编辑:这是模板...
<form action=\"/home/\" method=\"post\"> 
{% csrf_token %}
<input type=\"image\" src=\"submit.jpg\" id=\"value1\" name=\"bsubmit\" value=\"value1\"/>
</form>
我最初有多个提交,但是当我仅使用一个提交时,问题仍然存在。     
已邀请:
        您是否正在使用JavaScript中的“提交”按钮执行任何操作?在请求中包含\'bsubmit.x \'和\'bsubmit.y \'本身很奇怪。 除此之外,您实际上在使用\'bsubmit \'做什么? 通常,无论如何您都不应该直接访问post变量。使用此代替:
bsubmit = request.POST.get(\'bsubmit\') # defaults to `None`
- 要么 -
bsubmit = request.POST.get(\'bsubmit\', \'default\')
这样可以避免错误,因此您只需要在模板中适当地恢复即可。     

要回复问题请先登录注册