Django CSRF在表单提交到不同框架时失败

2 投票
1 回答
1098 浏览
提问于 2025-04-15 23:09

我正在制作一个页面,想要在这个页面上放一个表单,这个表单的提交结果会显示在同一个页面的一个iframe里。模板大致是这样的:

    <form action="form-results" method="post" target="resultspane" >
        {% csrf_token %}
        <input name="query">
        <input type=submit>
    </form>

    <iframe src="form-results" name="resultspane" width="100%" height="70%">
    </iframe>

但是在form-results这个地方出现了CSRF错误。请问在跨框架提交时需要注意什么特别的地方吗?

1 个回答

2

其实,这个问题和跨表单的POST请求没有关系。显示表单的模板需要用RequestContext来渲染,就像下面这样:

return render_to_response('form_template.html',
        context_instance = RequestContext(request))

撰写回答