我在StackOverflow上得到了一些关于如何使用JavaScript删除所有隐藏字段的建议.
提交表单会将用户发送给/submit调用submit_form视图.在我的views.py文件中,我定义了我的索引页面(带有表单),以及接收提交的页面(我的/index页面为我打印错误,但这不应该影响任何东西):
def index(request, error_message = ''):
t = get_template('index.html')
html = t.render(Context( { 'ERROR_MESSAGE': error_message } ))
return HttpResponse(html)
def submit_form(request):
# get the POST data out of request and do something
pass
Run Code Online (Sandbox Code Playgroud)
我已经能够通过将代码更改为:来抑制错误:
from django.contrib.csrf.middleware import csrf_exempt
@csrf_exempt
def submit_form(request):
# get the POST data out of request and do something
pass
Run Code Online (Sandbox Code Playgroud)
这实际上关闭了submit_form函数的CSRF.但是,我确信这不是理想的修复方法(现在我不会在我的表单中检查伪造).
我试过更复杂的修复,比如
init:function(){
var ac=this
# advice from StackOverflow to remove hidden
# …Run Code Online (Sandbox Code Playgroud)